Skip to content

Deploy Services using Pulumi

Henrique Fernandes edited this page Jul 27, 2025 · 4 revisions

1. Login to the Cloudflare R2 Bucket

The configuration of pulumi stacks are stored in the cloud inside of an R2 bucket in NIAEFEUP's cloudflare account.

Use and configure the production stack using R2 (same as AWS config), might need to get keys from the dash or your closest project coordinator πŸ˜„.

pulumi login 's3://niployments-pulumi?endpoint=52d22ed664e31a094229250acd87ccfb.eu.r2.cloudflarestorage.com'

You will most likely be prompted with errors saying that no region is defined and that credentials are not as well.

  1. export AWS_REGION=auto
  2. export AWS_ACCESS_KEY_ID=<value>
  3. export AWS_SECRET_ACCESS_KEY=<value>

2. Clone the repository in your home folder inside the RaspberryPI

You can either clone with HTTPS or SSH. If you choose the latter you have to create a private-public key pair in your home folder inside the RaspberryPI.

3. Install pnpm in your user

curl -fsSL https://get.pnpm.io/install.sh | sh -

4. Create folder with Pulumi CRDs

  1. cd niployments/services/pulumi/

  2. ./sync-crds.sh

5. Install dependencies

  1. cd niployments/services/pulumi/ (Assuming you are in the same folder)

  2. pnpm install

  3. cd niployments/

  4. pnpm run build

You can then run pulumi preview to check for errors and to preview the changes that will happen in the stack.

In order to start deploying the changes you can do pulumi up

Clone this wiki locally