4 ms·
Keep in mind this is at its core just a static site generator, there's nothing stopping you from pushing the generated site to S3, or even just a random server,
by jon-wood 11y ago
Keep in mind this is at its core just a static site generator, there's nothing stopping you from pushing the generated site to S3, or even just a random server, and hosting it there instead if you don't like Github's uptime.
- jayfk 11y agoAbsolutely. Once the site is generated, you want to push the following files: - index.html - style.css - milligram.min.css and, if you need the logo/favicon - favicon.png - logo.png
- IgorPartola 11y agoThere is one thing. Updates to S3 files are not atomic. That is, if you update a file, you may still get an old version of it for a time. Same with deletes. The only atomic operation it supports is creating a new object.
- cyphar 11y agoI'm not sure you mean atomic, unless you've seen cases where the file you get from S3 is a mix of the old and new version. Did you mean consistent (which is what you describe)?
- jorts 11y agoI think he meant automatic.
- deleted 11y ago[deleted]
- dchest 11y agoIf you update index.html and style.css, GitHub pages will apparently publish them simultaneously (atomically), but with S3 you upload index.html, then style.css — one of them will be "published" later than the other. (Analogy: GitHub pages is like creating a new directory, putting files there, then renaming the directory to the old name; S3 — putting files into the old directory.)
- IgorPartola 11y agoI do mean atomic, as a concept that includes durability and consistency. From Wikipedia: > An atomic transaction is an indivisible and irreducible series of database operations such that either all occur, or nothing occurs. A guarantee of atomicity prevents updates to the database occurring only partially, which can cause greater problems than rejecting the whole series outright. That is, if I update index.html on S3, only some of their actual servers get the update right away, and some do no. Thus if I start downloading index.html from different parts of the world I will see either the old or the new version. Atomic does not necessarily imply multiple actions being bundled together, which is what you may be thinking of. For example the mv command on Linux is atomic: it renames a file and returns once the rename is complete. This is not the case with S3. Another way to think of it: atomic update to all the S3 servers at once instead of to just some of them.