Skip to content

Commit a6f8f20

Browse files
committed
run provider-ci to generate updated workflows
- Checked out github.com/pulumi/ci-mgmt - Built the `provider-ci` tool - Ran `./bin/provider-ci generate --name equinix/pulumi-equinix --config ~/Documents/code/pulumi-equinix/.ci-mgmt.yaml --out ~/Documents/code/pulumi-equinix/`
1 parent cdb338b commit a6f8f20

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+2371
-1014
lines changed

.ci-mgmt.yaml

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -11,24 +11,7 @@ publish:
1111
registryDocs: true
1212
publishRegistry: false
1313
clean-github-workflows: false
14-
plugins:
15-
- name: random
16-
version: "4.14.0"
17-
- name: terraform
18-
version: "1.0.16"
19-
kind: converter
20-
- name: tls
21-
version: "4.11.0"
2214
# override default env to avoid bringing in
2315
# pulumi-internal environment variables
2416
env:
25-
TF_APPEND_USER_AGENT: pulumi
26-
# TEMP(?): override default tool versions to
27-
# stay closer to what we used prior to ci-mgmt
28-
toolVersions:
29-
dotnet: "6.0.x"
30-
go: "1.23.x"
31-
java: "11"
32-
gradle: "7.6"
33-
nodejs: "22.13.1"
34-
python: "3.11.8"
17+
TF_APPEND_USER_AGENT: pulumi

.config/mise.lock

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
[[tools."github:pulumi/pulumictl"]]
2+
version = "0.0.50"
3+
backend = "github:pulumi/pulumictl"
4+
5+
[[tools."github:pulumi/schema-tools"]]
6+
version = "0.6.0"
7+
backend = "github:pulumi/schema-tools"
8+
9+
[[tools.go]]
10+
version = "1.23.11"
11+
backend = "core:go"
12+
13+
[tools.go.platforms.macos-arm64]
14+
checksum = "sha256:d3c2c69a79eb3e2a06e5d8bbca692c9166b27421f7251ccbafcada0ba35a05ee"
15+
size = 71665541
16+
url = "https://dl.google.com/go/go1.23.11.darwin-arm64.tar.gz"
17+
18+
[[tools.golangci-lint]]
19+
version = "1.64.8"
20+
backend = "aqua:golangci/golangci-lint"
21+
22+
[[tools."npm:yarn"]]
23+
version = "1.22.22"
24+
backend = "npm:yarn"
25+
26+
[[tools.pulumi]]
27+
version = "3.190.0"
28+
backend = "aqua:pulumi/pulumi"
29+
30+
[tools.pulumi.platforms.macos-arm64]
31+
checksum = "sha256:f46926be063eb3b042fe524a3375364da507cb02f34142854a5b1a86aee005ee"
32+
size = 84664371
33+
url = "https://github.com/pulumi/pulumi/releases/download/v3.190.0/pulumi-v3.190.0-darwin-arm64.tar.gz"

.config/mise.test.toml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
2+
3+
# Overrides for test workflows
4+
5+
[env]
6+
# Acceptance (specifically providertest) tests require that PULUMI_HOME be the default
7+
PULUMI_HOME = "{{ env.HOME }}/.pulumi"
8+
9+
[tools]
10+
# always use pulumi latest for tests
11+
pulumi = "latest"

.config/mise.toml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
# WARNING: This file is autogenerated - changes will be overwritten when regenerated by https://github.com/pulumi/ci-mgmt
2+
# You can create your own root-level mise.toml file to override/augment this. See https://mise.jdx.dev/configuration.html
3+
4+
[env]
5+
_.source = "{{config_root}}/scripts/get-versions.sh"
6+
PULUMI_HOME = "{{config_root}}/.pulumi"
7+
8+
[tools]
9+
10+
# Runtimes
11+
# TODO: we may not need `get_env` once https://github.com/jdx/mise/discussions/6339 is fixed
12+
go = "{{ get_env(name='GO_VERSION_MISE', default='latest') }}"
13+
node = '20.19.5'
14+
python = '3.11.8'
15+
dotnet = '8.0.414'
16+
# Corretto version used as Java SE/OpenJDK version no longer offered
17+
java = 'corretto-11'
18+
19+
# Executable tools
20+
pulumi = "{{ get_env(name='PULUMI_VERSION_MISE', default='latest') }}"
21+
"github:pulumi/pulumictl" = 'latest'
22+
"github:pulumi/schema-tools" = "latest"
23+
gradle = '7.6'
24+
golangci-lint = "1.64.8" # See note about about overrides if you need to customize this.
25+
"npm:yarn" = "1.22.22"
26+
27+
[settings]
28+
experimental = true # Required for Go binaries (e.g. pulumictl).
29+
lockfile = true

.devcontainer/Dockerfile

Lines changed: 8 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,82 +1,12 @@
1-
ARG UBUNTU_VERSION=latest
2-
FROM ubuntu:${UBUNTU_VERSION}
1+
FROM jetpackio/devbox:latest
32

4-
# Update apt-get and install various needed utilities
5-
RUN apt-get update && \
6-
apt-get install -y curl && \
7-
apt-get install -y wget && \
8-
apt-get install -y xz-utils && \
9-
apt-get install -y make && \
10-
apt-get install -y gcc && \
11-
apt-get install -y git && \
12-
apt-get install -y gh && \
13-
apt-get install -y zip
3+
# Installing your devbox project
4+
WORKDIR /code
5+
COPY devbox.json devbox.json
6+
COPY devbox.lock devbox.lock
7+
RUN sudo chown -R "${DEVBOX_USER}:${DEVBOX_USER}" /code
148

15-
# Install bridged provider prerequisites
16-
# See README.md
179

18-
# Install go
19-
ARG GO_VERSION=1.21.3
20-
RUN rm -rf /usr/local/go && \
21-
wget -O ${GO_VERSION}.tar.gz https://golang.org/dl/go${GO_VERSION}.linux-amd64.tar.gz && \
22-
tar -C /usr/local -xzf ${GO_VERSION}.tar.gz && \
23-
rm ${GO_VERSION}.tar.gz
10+
RUN devbox run -- echo "Installed Packages."
2411

25-
ENV GOPATH=/root/go
26-
ENV PATH=$PATH:/usr/local/go/bin
27-
28-
# Install go linter
29-
RUN mkdir -p $GOPATH/bin && \
30-
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s -- -b $GOPATH/bin v1.46.2
31-
32-
ENV PATH=$PATH:$GOPATH/bin
33-
34-
# Install pulumictl
35-
ARG PULUMICTL_VERSION=v0.0.46
36-
RUN rm -rf /usr/local/bin/pulumictl && \
37-
wget -O pulumictl.${PULUMICTL_VERSION}.tar.gz https://github.com/pulumi/pulumictl/releases/download/${PULUMICTL_VERSION}/pulumictl-${PULUMICTL_VERSION}-linux-amd64.tar.gz && \
38-
tar -C /usr/local/bin -xzf pulumictl.${PULUMICTL_VERSION}.tar.gz
39-
40-
# Install nodejs
41-
ARG NODEJS_VERSION=v22.13.1
42-
ARG NODEJS_PKG=node-${NODEJS_VERSION}-linux-x64
43-
ARG NODEJS_TARBALL=${NODEJS_PKG}.tar.xz
44-
RUN rm -rf /usr/local/node && \
45-
wget -O ${NODEJS_TARBALL} https://nodejs.org/dist/${NODEJS_VERSION}/${NODEJS_TARBALL} && \
46-
tar -C /usr/local -xf ${NODEJS_TARBALL} && \
47-
mv /usr/local/${NODEJS_PKG} /usr/local/node
48-
49-
ENV PATH=$PATH:/usr/local/node/bin
50-
51-
# Install yarn
52-
RUN npm install --global yarn
53-
54-
# Install python and related items
55-
RUN apt-get install -y python3 && \
56-
apt-get install -y python3-setuptools
57-
58-
# Install .NET
59-
RUN wget https://packages.microsoft.com/config/ubuntu/22.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb && \
60-
dpkg -i packages-microsoft-prod.deb && \
61-
rm packages-microsoft-prod.deb
62-
63-
RUN apt-get update && \
64-
apt-get install -y apt-transport-https && \
65-
apt-get update && \
66-
apt-get install -y dotnet-sdk-6.0
67-
68-
# Install Pulumi
69-
RUN curl -fsSL https://get.pulumi.com | sh
70-
ENV PATH=$PATH:/root/.pulumi/bin
71-
72-
# Install upgrade-provider
73-
RUN go install github.com/pulumi/upgrade-provider@main
74-
75-
# Install sdkman
76-
RUN curl -s "https://get.sdkman.io" | bash
77-
78-
# Install gradle
79-
SHELL ["/bin/bash", "-c"]
80-
RUN source "$HOME/.sdkman/bin/sdkman-init.sh" && \
81-
sdk install java 17.0.17-tem && \
82-
sdk install gradle
12+
RUN devbox shellenv --init-hook >> ~/.profile

.devcontainer/devcontainer.json

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,16 @@
1-
// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at:
2-
// https://github.com/microsoft/vscode-dev-containers/tree/v0.202.3/containers/hugo
31
{
4-
"name": "TFProvider",
2+
"name": "Devbox Remote Container",
53
"build": {
6-
"dockerfile": "Dockerfile",
7-
"options": ["--platform=linux/amd64" ]
4+
"dockerfile": "./Dockerfile",
5+
"context": ".."
86
},
9-
"runArgs": ["--platform=linux/amd64" ],
10-
"mounts": [
11-
"type=bind,source=${localEnv:HOME}/.ssh,target=/root/.ssh,readonly"
12-
]
7+
"customizations": {
8+
"vscode": {
9+
"settings": {},
10+
"extensions": [
11+
"jetpack-io.devbox"
12+
]
13+
}
14+
},
15+
"remoteUser": "devbox"
1316
}

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
sdk/**/* linguist-generated=true
Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
name: Download the code generator binary
2+
description: Downloads the code generator binary to `bin/`.
3+
4+
runs:
5+
using: "composite"
6+
steps:
7+
- name: Download the prerequisites bin
8+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
9+
with:
10+
name: prerequisites-bin
11+
path: bin
12+
13+
- name: Restore executable permissions
14+
shell: bash
15+
run: chmod +x $(< bin/executables.txt)
16+
17+
- name: Remove executables list
18+
shell: bash
19+
run: rm bin/executables.txt
20+
21+
- name: Download schema-embed.json
22+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
23+
with:
24+
# Use a pattern to avoid failing if the artifact doesn't exist
25+
pattern: schema-embed.*
26+
# Avoid creating directories for each artifact
27+
merge-multiple: true
28+
path: provider/cmd/pulumi-resource-equinix
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
name: Download the provider binary
2+
description: Downloads the provider binary to `bin/`.
3+
4+
runs:
5+
using: "composite"
6+
steps:
7+
8+
- name: Download pulumi-resource-equinix
9+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
10+
with:
11+
pattern: pulumi-resource-equinix-*-linux-amd64.tar.gz
12+
path: ${{ github.workspace }}/bin
13+
merge-multiple: true
14+
15+
- name: Untar pulumi-resource-equinix
16+
shell: bash
17+
run: |
18+
tar -zxf ${{ github.workspace }}/bin/*amd64.tar.gz -C ${{ github.workspace}}/bin
19+
20+
- name: Mark pulumi-resource-equinix as executable
21+
shell: bash
22+
run: |
23+
find ${{ github.workspace }} -name "pulumi-*-equinix" -print -exec chmod +x {} \;
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Download SDK asset
2+
description: Restores the SDK asset for a language.
3+
4+
inputs:
5+
language:
6+
required: true
7+
description: One of nodejs, python, dotnet, go, java
8+
9+
runs:
10+
using: "composite"
11+
steps:
12+
- name: Download ${{ inputs.language }} SDK
13+
uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
14+
with:
15+
name: ${{ inputs.language }}-sdk.tar.gz
16+
path: ${{ github.workspace}}/sdk/
17+
- name: Uncompress SDK folder
18+
shell: bash
19+
run: tar -zxf ${{ github.workspace }}/sdk/${{ inputs.language }}.tar.gz -C ${{ github.workspace }}/sdk/${{ inputs.language }}

0 commit comments

Comments
 (0)