Pulumify automatically builds and publishes static website previews to AWS S3 in response to GitHub Pull Requests. This lets you rapidly iterate on website changes that are easily reviewable with your team.
Just configure it using the steps below, open a new PR, and voila!
Pulumify is powered by Pulumi and GitHub Actions. Pulumi supports other clouds and based on interest, we'd be happy to add support for Azure, GCP, etc.
To enable Pulumify in your repo, do the following:
-
Configure your GitHub secrets. This must include your
PULUMI_ACCESS_TOKENin addition to your cloud credentials. For example, to deploy to AWS, you'll needAWS_ACCESS_KEY_IDandAWS_SECRET_ACCESS_KEYvalues with appropriate IAM permissions to deploy an S3 website to your account. -
Commit the following file as
.github/workflows/pulumify.yml:name: Pulumify on: [pull_request, delete] jobs: updateLivePreview: name: Update Live Preview runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 - uses: docker://pulumi/pulumify env: AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }} PULUMIFY_BUILD: make ensure && hugo --buildFuture -e $GITHUB_SHA PULUMIFY_ROOT: publicFeel free to customize the
PULUMIFY_BUILDorPULUMIFY_ROOTsettings as appropriate. This example uses Hugo. It's also possible to deploy to a Pulumi organization usingPULUMIFY_ORGANIZATION.
After these three steps, the Pulumify GitHub Action will comment on your PRs automatically with URLs to your websites.
