* src/site.hs (siteRules): Refactor site building Rules into a new variable allowing for
reuse. Remove duplicate rules ()
(myConfig): Set deployCommand to something temporary.
(_devWatch): Entrypoint mean for use in development; it rebuilds the site builder, then
rebuilds the site.
* site (Removed file): Removed as it is no longer necessary. If additional cli functionality
is required, this can be done directly in haskell.
* guix.scm: Symlink 'site' now that it is no longer provided as a script.
(setenv): setenv only applies to the first (non-cached) run of `guix shell ...`,
because of this, remove setting PS1.
(native-inputs): Include development environment dependencies
* channels.scm (channel): Update rekahsoft-guix channel (noop, but originally updated while
looking at using overmind).
* bootstrap.sh: A script that generates various development scripts from the projects
README.org file.
* README.org: Cleanup and minor restructuring.
(Repository Structure): New (incomplete) section
(Prerequisites): New section
(Quick Start): New section
(Hakyll Site Commands): New section, with subheadings for various hakyll sub-commands.
(Makefile): New section; generates a makefile useful for development
* .gitignore: Ignore files generated by ./bootstrap.sh
* .ghci: ghci configuration file for hakyll development.
* .envrc: direnv configuration that loads a development environment for those who have
allowed it
Bootstrap the environment using:
./site init-env <stack-name> <cf-bucket> <cnames>
- stack-name :: is the stack name used for the infrastructure bootstrap cloudformation template
- cf-bucket :: is the name of the S3 bucket that holds the cloudformation stack that will bootstrap
the environment
- cnames :: is a comma separated list of domains to be used as CNames with this deployment
Note: this can also be run directly with ./init-env.sh
Once the environment has been bootstraped, the site can be deployed using the variables given
in its output.
AWS_DEFAULT_REGION=<region> \
AWS_ACCESS_KEY_ID=<access-key> \
AWS_SECRET_ACCESS_KEY=<secret-key> \
S3_BUCKET=<s3-bucket> \
./site deploy
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Refactored and cleaned up site build script. Use cabal to run executable
instead of through the link %site. Added options for running
cabal commands clean, configure, and build via options clear, configure,
and make respectively. These different names were used as to not reuse
ones already in use by the hakyll generated site binary.
Update deploy code in src/site.hs as there is no need to remove empty
files anymore as they are no longer generated.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>
Instead of having a symbolic link from ./site to the executable in
dist/build/blog-rekahsoft-ca/blog-rekahsoft-ca, a separate test
running script ./site-test and a Makefile (which is redundant), have a
single shell script that wraps the blog-rekahsoft-ca executable and adds
a test option along with a switch to start selenium (-s|--run-selenium).
Updated README accordingly and removed unnecessary Makefile, and
site-test. Moved the symbolic link ./site to ./%site.
Signed-off-by: Collin J. Doering <collin.doering@rekahsoft.ca>