1 {{{header(infra/quickstart,
4 Infra Quickstart Guide)}}}
5 #+property: header-args :dir /home/ellis/comp/infra/
7 The CC
=infra= project is the CC software deployment toolkit.
15 - *Minimum Dependencies* 21 Check that the current host is a qualified builder.
23 This will interrogate the system, checking for minimum
24 requirements. If any requirement isn't met an error is
25 signaled. Environment variables are also reported here, but not
26 set. On completion, the file
=host.sxp= is written to the current
29 The minimum software dependencies above should be installed via your
30 system's package manager. The remaining dependencies are installed via
31 the
=install.sh= script.
64 - download and prepare target-specific dependencies
65 - install the latest
=sk= binary from https://packy.compiler.company
67 - compile and load
=bootstrap.lisp= 69 Upon completion a local
=stash= directory is provisioned. At this
70 point we no longer need to depend on shell scripting as we have a
71 fully interactive Lisp environment to hack on our builds with.
73 From here, you may run
=skel inspect= to inspect the infra
=skelfile= 74 and select a target to build on your machine or in a container. Use
75 =skel --help= for a list of other commands.
78 Deploy
=infra= builds to a remote.
80 Deployment involves 'packing' a target found in
=stash=, archiving it,
81 compressing it, and sending it to a remote location possibly with a
82 signature, checksum, or other metadata, and possibly encrypted. A
83 'package' may also be a raw directory of plain-text files. It's a very
84 loose term. Where the package ends up and how it is packed depends on
85 the build-config and skelfile slots.
87 Production deployments end up at https://packy.compiler.company.
91 Install core packages locally.