Skip to main content

Pulumi

Pulumi is an open-source infrastructure as code tool that allows you to create, deploy, and manage cloud infrastructure using familiar programming languages.

🚀 Usage​

Add the following command to your CI configuration file:

fluentci run --wasm pulumi preview --stack dev
fluentci run --wasm pulumi up --stack dev

Commands​

NameDescription
setupInstalls a specific version of Pulumi.
previewPreview changes to a stack.
upCreate or update a stack.

Code Examples​

Add fluentci-pdk crate to your Cargo.toml:

[dependencies]
fluentci-pdk = "0.2.1"

Use the following code to call a module function:

use fluentci_pdk::dag;

// ...

dag().call(
"https://pkg.fluentci.io/[email protected]?wasm=1",
"preview",
vec!["--stack", "dev"],
)?;

dag().call(
"https://pkg.fluentci.io/[email protected]?wasm=1",
"up",
vec!["--stack", "dev"],
)?;

CI/CD pipeline integrations​

The following examples show how to integrate FluentCI with popular CI providers to provision infrastructure using Pulumi:

ci.yml
name: ci
on:
push:
branches:
- main
jobs:
tasks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup Fluent CI
uses: fluentci-io/setup-fluentci@v5
- name: preview
run: fluentci run --wasm pulumi preview --stack dev
env:
GOOGLE_APPLICATION_CREDENTIALS: ./service-account.json
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}
- name: up
run: fluentci run --wasm pulumi up --stack dev
env:
GOOGLE_APPLICATION_CREDENTIALS: ./service-account.json
PULUMI_ACCESS_TOKEN: ${{ secrets.PULUMI_ACCESS_TOKEN }}