Skip to content

Commit

Permalink
Ensure CNI manifest is applied to cluster when the base manifest and …
Browse files Browse the repository at this point in the history
…provider are updated (#1093)

### Proposed changes

This PR ensures that changes to the base CNI manifest is applied as a
Pulumi update whenever the provider version changes. This is done by now
also storing the computed manifest in state to diff against. Previously,
only changes to user VpcCni opts caused a diff. This would mean that
some users who have already updated to the latest provider version, and
manually triggered a CNI update would encounter a one-off spurious diff
since the computed manifest would not have been stored in state.

Changes made:

- Add applied manifest to state to fix the issue where the manifest
isn't reapplied when the provider is updated
- fix the issue where VpcCni could not be passed a kubeconfig object
correctly
- updated CI to use the latest version of the Pulumi binary
- Added CNIAcrossUpdates integration test
- Added CNIAcrossUpdates to the list of tests to run in CI

### Related issues (optional)

Fixes: #1057
Fixes: #1092

---------

Co-authored-by: Pulumi Bot <30351955+pulumi-bot@users.noreply.github.com>
  • Loading branch information
rquitales and pulumi-bot committed Mar 26, 2024
1 parent 8e16403 commit 9343929
Show file tree
Hide file tree
Showing 37 changed files with 27,046 additions and 26,866 deletions.
37 changes: 14 additions & 23 deletions .github/workflows/cron.yml
Expand Up @@ -35,7 +35,7 @@ jobs:
- name: Unshallow clone for tags
run: git fetch --prune --unshallow --tags
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Setup Node
Expand Down Expand Up @@ -69,13 +69,11 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Build provider binary + schema
run: make schema provider
- name: Check worktree clean
Expand Down Expand Up @@ -117,13 +115,11 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Python
uses: actions/setup-python@v2
with:
Expand Down Expand Up @@ -210,13 +206,11 @@ jobs:
python -m pip install --upgrade pip
pip install awscli --upgrade
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down Expand Up @@ -278,24 +272,25 @@ jobs:
test-name:
- AwsProfile
- Cluster
- CNIAcrossUpdates
- EncryptionProvider
- ExtraSecurityGroups
- Fargate
- ImportDefaultEksSecgroup
- KubernetesServiceIPv4RangeForCluster
- ManagedNodeGroup
- MigrateNodeGroups
- MNG_withMissingRole
- MNG_withAwsAuth
- MNG_withMissingRole
- NodeGroup
- NodegroupOptions
- OidcIam
- ReplaceClusterAddSubnets
- ReplaceSecGroup
- ScopedKubeconfig
- StorageClasses
- Tags
- TagInputTypes
- Tags
- VpcSubnetTags
test-python:
name: Run Python Tests
Expand All @@ -316,7 +311,7 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Setup Python
Expand All @@ -328,9 +323,7 @@ jobs:
python -m pip install --upgrade pip
pip install awscli --upgrade
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down Expand Up @@ -436,13 +429,11 @@ jobs:
python -m pip install --upgrade pip
pip install awscli --upgrade
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down
55 changes: 20 additions & 35 deletions .github/workflows/master.yml
Expand Up @@ -35,7 +35,7 @@ jobs:
- name: Unshallow clone for tags
run: git fetch --prune --unshallow --tags
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Setup Node
Expand Down Expand Up @@ -69,13 +69,11 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Build provider binary + schema
run: make schema provider
- name: Check worktree clean
Expand Down Expand Up @@ -117,13 +115,11 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Python
uses: actions/setup-python@v2
with:
Expand Down Expand Up @@ -211,13 +207,11 @@ jobs:
with:
tag: v2.1.5-procursus2
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Create Provider Binaries
run: make dist
- name: Upload Provider Binaries
Expand All @@ -241,13 +235,11 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down Expand Up @@ -308,13 +300,11 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down Expand Up @@ -375,13 +365,11 @@ jobs:
python -m pip install --upgrade pip
pip install awscli --upgrade
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down Expand Up @@ -443,24 +431,25 @@ jobs:
test-name:
- AwsProfile
- Cluster
- CNIAcrossUpdates
- EncryptionProvider
- ExtraSecurityGroups
- Fargate
- ImportDefaultEksSecgroup
- KubernetesServiceIPv4RangeForCluster
- ManagedNodeGroup
- MigrateNodeGroups
- MNG_withMissingRole
- MNG_withAwsAuth
- MNG_withMissingRole
- NodeGroup
- NodegroupOptions
- OidcIam
- ReplaceClusterAddSubnets
- ReplaceSecGroup
- ScopedKubeconfig
- StorageClasses
- Tags
- TagInputTypes
- Tags
- VpcSubnetTags
test-python:
name: Run Python Tests
Expand All @@ -481,7 +470,7 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Setup Python
Expand All @@ -493,9 +482,7 @@ jobs:
python -m pip install --upgrade pip
pip install awscli --upgrade
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down Expand Up @@ -601,13 +588,11 @@ jobs:
python -m pip install --upgrade pip
pip install awscli --upgrade
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
uses: pulumi/actions@v4
with:
pulumi-version: v3.89.0
uses: pulumi/actions@v5
- name: Setup Node
uses: actions/setup-node@v1
with:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/record.yml
Expand Up @@ -58,7 +58,7 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
Expand Down Expand Up @@ -99,7 +99,7 @@ jobs:
with:
go-version: ${{ env.GOVERSION }}
- name: Install pulumictl
uses: jaxxstorm/action-install-gh-release@v1.1.0
uses: jaxxstorm/action-install-gh-release@v1.11.0
with:
repo: pulumi/pulumictl
- name: Install Pulumi CLI
Expand Down

0 comments on commit 9343929

Please sign in to comment.