Experimenting with Github Actions

GitHub actions allow flexible and potentially complicated `actions` that comprise `workflows` that respond to events on Github. Continuous integration, messaging Slack, greeting new contributors, deploying applications, and many other templates are ready for customization and integration into any repo.

Infrastructure-as-Code: Building the Bioconductor Conference AMI With Packer

One of the main features of the annual Bioconductor Conference is the proportion of time spent working with code in the form of workshops. To support these workshops, we ask workshop presenters to supply Rmarkdown materials which we collate into workshop materials. Using literate programming approaches like Rmarkdown ensures that the workflows are self-consistent and work as expected. In addition to the Rmarkdown workshop materials, we also need a consistent computing environment that can support reasonably large computation, provide high-performance network and file system access, and is essentially unlimited in scale (we expect to have >150 participants, each with his/her own machine).

export POOL_NAME='preempt-1' export CLUSTER_NAME='cluster-1' gcloud beta container node-pools create ${POOL_NAME} --preemptible \ --cluster ${CLUSTER_NAME} --enable-autoscaling \ --min-nodes=0 --max-nodes=50 \ --machine-type=n1-standard-2 apiVersion: v1 kind: Job spec: nodeSelector: "true" template: spec: containers: - name: pyversion image: python:3.7 command: ["python", "--version"] restartPolicy: Never backoffLimit: 4