Skip to content

Pulumi Preview

Pulumi Preview #30

name: Pulumi Preview
on:
workflow_dispatch:
inputs:
environment:
type: choice
description: GitHub Environment
options:
- dev
default: dev
test_input:
type: string
required: true
jobs:
preview:
name: Pulumi Preview
runs-on: ubuntu-latest
environment: ${{ inputs.environment }}
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: ${{ vars.AWS_REGION }}
AWS_SESSION_TOKEN: ${{ secrets.AWS_SESSION_TOKEN }}
PULUMI_CONFIG_PASSPHRASE: ${{ secrets.PULUMI_CONFIG_PASSPHRASE }}
GITHUB_ENVIRONMENT: ${{ inputs.environment }}
AWS_RESOURCE_PREFIX: "pulumi-${{ inputs.environment }}"
AWS_RESOURCE_SHORT_PREFIX: "p-${{ inputs.environment }}" # Max 6 chars
AWS_AZ_NUMBER: "2"
CONTAINER_IMAGE_URI: "nginx"
CONTAINER_CPU: "256"
CONTAINER_MEMORY: "512"
CONTAINER_PORT: "80"
TEST_INPUT: ${{secrets[github.event.inputs.test_input]}}
steps:
- uses: actions/checkout@v2
# - name: Mask secret vars
# run: echo "::add-mask::${{ inputs.test_input }}"
- name: Print secret vars
run: echo -n "$TEST_INPUT" | wc -c
# - uses: actions/setup-python@v2
# with:
# python-version: 3.12
# - name: Configure AWS Credentials
# uses: aws-actions/configure-aws-credentials@v1
# with:
# aws-access-key-id: ${{ env.AWS_ACCESS_KEY_ID }}
# aws-region: ${{ env.AWS_REGION }}
# aws-secret-access-key: ${{ env.AWS_SECRET_ACCESS_KEY }}
# aws-session-token: ${{ env.AWS_SESSION_TOKEN }}
# - name: Install pulumi and login to S3
# run: |
# pip install pulumi
# pulumi login s3://pulumi-lab-state2
# - name: Setup pulumi stack and variables
# run: |
# pulumi stack select --create $GITHUB_ENVIRONMENT
# pulumi config set aws:region $AWS_REGION
# pulumi config set region $AWS_REGION
# pulumi config set az_number $AWS_AZ_NUMBER
# pulumi config set prefix $AWS_RESOURCE_PREFIX
# pulumi config set short_prefix $AWS_RESOURCE_SHORT_PREFIX
# pulumi config set image_uri $CONTAINER_IMAGE_URI
# pulumi config set cpu $CONTAINER_CPU
# pulumi config set memory $CONTAINER_MEMORY
# pulumi config set container_port $CONTAINER_PORT
# working-directory: pulumi
# - name: Pulumi Preview
# run: |
# pulumi preview
# working-directory: pulumi
# - name: Pulumi Preview Details
# run: |
# pulumi preview --json
# working-directory: pulumi