# warmer A CDN cache warmer in rust for the sitemap.xml files that look like this: ```xml https://abh.ai/ 2022-06-25T20:46Z daily 1.0 https://abh.ai/photos/nature 2022-09-25T05:33Z monthly 0.7 https://abh.ai/portraits 2022-09-24T18:42Z monthly 0.7 ``` ## Other examples of sitemaps that work - https://abh.ai/sitemap.xml - https://qed42.com/sitemap.xml - https://www.australia.gov.au/sitemap.xml - https://www.alkhaleej.ae/sitemap.xml?page=1 - https://www.axelerant.com/sitemap.xml - https://ffw.com/sitemap.xml ## Usage Download (from [here](https://github.com/codingsasi/warmer/releases)) and run the executable binary on linux with the following command ``` warmer http(s)://someurl.com interl - ./warmer https://abh.ai 5 - ./warmer https://abh.ai 1 ``` - The interval value should be specified in seconds, and it's how long the warmer waiting before loading the next URL in the sitemap. - The default interval is 5 seconds. No interval (0s) is allowed but use only if you want to DDOS your own site. - The complete url should be specified with scheme as well. ### Build from source 1. Clone the repo 2. cd warmer 3. Install cargo https://doc.rust-lang.org/cargo/getting-started/installation.html 4. cargo build --release 5. The binary will be in the target/release folder. It will also be named `warmer` 6. You may need to install `libudev-dev`, `libssl-dev`, `openssl`, `pkg-config`, `build-essential`. ### Running using docker 1. docker pull abhaisasidharan/warmer 2. docker run abhaisasidharan/warmer -it warmer https://abh.ai 5 ### Notes Large sitemaps, that include other zipped or gzipped sitemaps are not supported yet. I'll release that as and when I get time. But for most sitemaps this should warm it just fine. Currently on supported on 64-bit linux OS.