From 3cdb427013c8a317823d64e9499362357cf58bd6 Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Mon, 9 Oct 2023 15:12:13 -0400 Subject: [PATCH 01/14] Create docs --- docs | 1 + 1 file changed, 1 insertion(+) create mode 100644 docs diff --git a/docs b/docs new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/docs @@ -0,0 +1 @@ + From 55dececef0cc5590525b6ebf5424b5bc6ba3413a Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Mon, 9 Oct 2023 15:12:34 -0400 Subject: [PATCH 02/14] Delete docs --- docs | 1 - 1 file changed, 1 deletion(-) delete mode 100644 docs diff --git a/docs b/docs deleted file mode 100644 index 8b13789..0000000 --- a/docs +++ /dev/null @@ -1 +0,0 @@ - From 3becba3613eb0111e70b3a8e5bc3448698f01f3d Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Wed, 25 Oct 2023 12:00:36 -0400 Subject: [PATCH 03/14] Update README.md --- README.md | 230 +++++++++++++++++++----------------------------------- 1 file changed, 79 insertions(+), 151 deletions(-) diff --git a/README.md b/README.md index fbd1304..8198ba5 100644 --- a/README.md +++ b/README.md @@ -1,182 +1,110 @@ -# Pulumi Native Provider Boilerplate +# Pulumi Concourse Provider -This repository is a boilerplate showing how to create a native Pulumi provider. +A Pulumi provider for Concourse. -### Background +# Why +fly is an amazing tool, but configuring through scripts running fly is not ideal. -This repository is part of the [guide for authoring and publishing a Pulumi Package](https://www.pulumi.com/docs/guides/pulumi-packages/how-to-author). +# Example Usage +## Configure the provider (using target from fly) -Learn about the concepts behind [Pulumi Packages](https://www.pulumi.com/docs/guides/pulumi-packages/#pulumi-packages). + ```const concourse = require("@pulumi/concourse"); -Follow this link to see [an architecture diagram for Pulumi](https://www.pulumi.com/docs/intro/concepts/how-pulumi-works/#how-pulumi-works). +const providerConfig = new concourse.Provider("concourseProvider", { + target: "target_name" +}); ``` -A Pulumi Resource Provider: -- is a gRPC server which allows for the Pulumi engine to create resources in a specific cloud -- holds the lifecycle logic for these cloud resources -- holds a pulumi JSON schema that describes the provider -- provides language-specific SDKs so resources can be created in whichever language you prefer +## Configure the provider (using a local username and password) +Note: this is not basic authentication -When we speak of a "native" provider, we mean that all implementation is native to Pulumi, as opposed -to [Terraform based providers](https://github.com/pulumi/pulumi-tf-provider-boilerplate). + ```const providerConfig = new concourse.Provider("concourseProvider", { + url: "https://wings.pivotal.io", + team: "main", + username: "localuser", + password: "very-secure-password" +}); ``` -## Authoring a Pulumi Native Provider +## Look up all teams -The following instructions assume that the provider is written for the Pulumi organisation. -In the future, we will add instruction for providers published and maintained by the Pulumi community, referred to as "third-party" providers. +```const teams = concourse.getTeams({}); -This boilerplate creates a working Pulumi-owned provider named `xyz`. -It implements a random number generator that you can [build and test out for yourself](#test-against-the-example) and then replace the Random code with code specific to your provider. - - -### Prerequisites - -Ensure the following tools are installed and present in your `$PATH`: - -* [`pulumictl`](https://github.com/pulumi/pulumictl#installation) -* [Go 1.17](https://golang.org/dl/) or 1.latest -* [NodeJS](https://nodejs.org/en/) 14.x. We recommend using [nvm](https://github.com/nvm-sh/nvm) to manage NodeJS installations. -* [Yarn](https://yarnpkg.com/) -* [TypeScript](https://www.typescriptlang.org/) -* [Python](https://www.python.org/downloads/) (called as `python3`). For recent versions of MacOS, the system-installed version is fine. -* [.NET](https://dotnet.microsoft.com/download) - - -### Creating and Initializing the Repository - -Pulumi offers this repository as a [GitHub template repository](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) for convenience. From this repository: - -1. Click "Use this template". -1. Set the following options: - * Owner: pulumi - * Repository name: pulumi-xyz-native (replace "xyz" with the name of your provider) - * Description: Pulumi provider for xyz - * Repository type: Public -1. Clone the generated repository. - -From the templated repository: - -1. Search-replace `xyz` with the name of your desired provider. - -#### Build the provider and install the plugin - - ```bash - $ make build install - ``` - -This will: +export const teamNames = teams.names; +``` -1. Create the SDK codegen binary and place it in a `./bin` folder (gitignored) -2. Create the provider binary and place it in the `./bin` folder (gitignored) -3. Generate the dotnet, Go, Node, and Python SDKs and place them in the `./sdk` folder -4. Install the provider on your machine. +## Look up a team +```const myTeam = concourse.getTeam({ + teamName: "main" +}); -#### Test against the example - -```bash -$ cd examples/simple -$ yarn link @pulumi/xyz -$ yarn install -$ pulumi stack init test -$ pulumi up -``` +export const { + teamName, + owners, + members, + pipelineOperators, + viewers +} = myTeam;``` -Now that you have completed all of the above steps, you have a working provider that generates a random string for you. - -#### A brief repository overview - -You now have: - -1. A `provider/` folder containing the building and implementation logic - 1. `cmd/` - 1. `pulumi-gen-xyz/` - generates language SDKs from the schema - 2. `pulumi-resource-xyz/` - holds the package schema, injects the package version, and starts the gRPC server - 2. `pkg` - 1. `provider` - holds the gRPC methods (and for now, the sample implementation logic) required by the Pulumi engine - 2. `version` - semver package to be consumed by build processes -2. `deployment-templates` - a set of files to help you around deployment and publication -3. `sdk` - holds the generated code libraries created by `pulumi-gen-xyz/main.go` -4. `examples` a folder of Pulumi programs to try locally and/or use in CI. -5. A `Makefile` and this `README`. - -### Writing the schema - -The [JSON schema file](https://www.pulumi.com/docs/guides/pulumi-packages/schema) is used by `pulumi-gen-xyz` to create language-specific SDKs. -It is, therefore, a central requirement for any resource provider. -Provider schemas can be handwritten, or alternatively machine-generated by combining API specification with pulumi-specific logic. - -This repository provides the [xyz example schema](./provider/cmd/pulumi-resource-xyz/schema.json) to get you started. -[The AWS Native Provider schema](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-resource-aws-native/schema.json) provides a much larger example. -Refer to the [package schema documentation](https://www.pulumi.com/docs/guides/pulumi-packages/schema/#pulumi-package-schema) for additional details when writing the schema. - -### Implementing the gRPC methods - -Once you have a schema that describes all the resources and metadata for your provider, you will need to implement the desired gRPC methods. -You will find a mostly blank implementation of these in `pkg/provider/provider.go`. -Note that these methods do not link 1:1 to the Pulumi CLI commands. - -#### Basic Functionality - -The struct and creation of the provider are implemented already: - -```go -// provider/pkg/provider.go -type xyzProvider struct { - host *provider.HostClient - name string - version string - schema []byte -} - -func makeProvider(host *provider.HostClient, name, version string, pulumiSchema []byte) (pulumirpc.ResourceProviderServer, error) { - // Return the new provider - return &xyzProvider{ - host: host, - name: name, - version: version, - schema: pulumiSchema, - }, nil -} -``` +## Look up a pipeline -You need to provide the following methods: +```const myPipeline = concourse.getPipeline({ + teamName: "main", + pipelineName: "pipeline" +}); -1. Check - validates resource Inputs -2. Diff - calculates the differences between the actual and the desired state of a resource -3. Create - creates a new instance of a resource from an Input -4. Update - updates a resource in-place (i.e. without deleting/recreating) -5. Read - reads current inputs and state for a resource -6. Delete - deletes a resource and its corresponding state +export const { + teamName, + pipelineName, + isExposed, + isPaused, + jsonConfig, + yamlConfig +} = myPipeline;``` -[Resource lifecycle methods are documented here](https://pulumi-developer-docs.readthedocs.io/en/stable/providers/implementers-guide.html#custom-resource-lifecycle). +## Create a team -The following methods are necessary for every provider and are already implemented: +Supports `owners`, `members`, `pipelineOperators`, and `viewers`. -1. GetPluginInfo - returns generic information about this plugin, like its version -2. GetSchema - returns the Pulumi schema to the provider +Specify users and groups by prefixing the strings: +`user`: +`group`: -#### Additional Methods +```const myTeamResource = new concourse.Team("myTeam", { + teamName: "my-team", + owners: [ + "group:github:org-name", + "group:github:org-name:team-name", + "user:github:tlwr" + ], + viewers: [ + "user:github:samrees" + ] +});``` -The [resource provider service](https://github.com/pulumi/pulumi/blob/master/sdk/proto/provider.proto) includes a few more gRPC methods that you may need to implement and can read more about. +## Create a pipeline -### Build Examples +```const myPipelineResource = new concourse.Pipeline("myPipeline", { + teamName: "main", + pipelineName: "my-pipeline", + isExposed: true, + isPaused: true, + pipelineConfig: "./pipeline-config.yml", + pipelineConfigFormat: "yaml", + vars: { + foo: "bar" + } +});``` -Create an example program using the resources defined in your provider, and place it in the `examples/` folder. +## Import -You can now repeat the steps for [build, install, and test](#test-against-the-example). +Concourse teams can be imported using the team name: +```$ pulumi import concourse:team:Team myTeamResource my-team``` +Concourse pipelines can be imported using the team name and pipeline name: +```$ pulumi import concourse:pipeline:Pipeline myPipelineResource my-team:my-app``` -## Documentation -Please [follow this guide to add documentation to your provider](https://www.pulumi.com/docs/guides/pulumi-packages/how-to-author/#write-documentation). -## Configuring CI and releases -1. Follow the instructions laid out in the [deployment templates](./deployment-templates/README-DEPLOYMENT.md). -## References -Other resources for learning about the Pulumi resource model: -* [Pulumi Kubernetes provider](https://github.com/pulumi/pulumi-kubernetes/blob/master/provider/pkg/provider/provider.go) -* [Pulumi Terraform Remote State provider](https://github.com/pulumi/pulumi-terraform/blob/master/provider/cmd/pulumi-resource-terraform/provider.go) -* [Dynamic Providers](https://www.pulumi.com/docs/intro/concepts/programming-model/#dynamicproviders) From 518d0098b0b9d0521b8c0afac287ba04da52b56c Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Wed, 25 Oct 2023 12:02:50 -0400 Subject: [PATCH 04/14] Update README.md --- README.md | 28 ++++++++++++++++++++-------- 1 file changed, 20 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 8198ba5..20bb5f6 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,8 @@ fly is an amazing tool, but configuring through scripts running fly is not ideal const providerConfig = new concourse.Provider("concourseProvider", { target: "target_name" -}); ``` +}); +``` ## Configure the provider (using a local username and password) Note: this is not basic authentication @@ -22,7 +23,8 @@ Note: this is not basic authentication team: "main", username: "localuser", password: "very-secure-password" -}); ``` +}); +``` ## Look up all teams @@ -42,7 +44,8 @@ export const { members, pipelineOperators, viewers -} = myTeam;``` +} = myTeam; +``` ## Look up a pipeline @@ -58,7 +61,8 @@ export const { isPaused, jsonConfig, yamlConfig -} = myPipeline;``` +} = myPipeline; +``` ## Create a team @@ -79,7 +83,8 @@ Specify users and groups by prefixing the strings: viewers: [ "user:github:samrees" ] -});``` +}); +``` ## Create a pipeline @@ -93,15 +98,22 @@ Specify users and groups by prefixing the strings: vars: { foo: "bar" } -});``` +}); +``` ## Import Concourse teams can be imported using the team name: -```$ pulumi import concourse:team:Team myTeamResource my-team``` + +``` +$ pulumi import concourse:team:Team myTeamResource my-team +``` Concourse pipelines can be imported using the team name and pipeline name: -```$ pulumi import concourse:pipeline:Pipeline myPipelineResource my-team:my-app``` + +``` +$ pulumi import concourse:pipeline:Pipeline myPipelineResource my-team:my-app +``` From e0ea935150852356670d7bd0618a0738196cf68f Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Wed, 25 Oct 2023 12:05:32 -0400 Subject: [PATCH 05/14] Create index.md --- docs/index.md | 122 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 122 insertions(+) create mode 100644 docs/index.md diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..20bb5f6 --- /dev/null +++ b/docs/index.md @@ -0,0 +1,122 @@ +# Pulumi Concourse Provider + +A Pulumi provider for Concourse. + +# Why +fly is an amazing tool, but configuring through scripts running fly is not ideal. + +# Example Usage +## Configure the provider (using target from fly) + + ```const concourse = require("@pulumi/concourse"); + +const providerConfig = new concourse.Provider("concourseProvider", { + target: "target_name" +}); +``` + +## Configure the provider (using a local username and password) +Note: this is not basic authentication + + ```const providerConfig = new concourse.Provider("concourseProvider", { + url: "https://wings.pivotal.io", + team: "main", + username: "localuser", + password: "very-secure-password" +}); +``` + +## Look up all teams + +```const teams = concourse.getTeams({}); + +export const teamNames = teams.names; +``` + +## Look up a team +```const myTeam = concourse.getTeam({ + teamName: "main" +}); + +export const { + teamName, + owners, + members, + pipelineOperators, + viewers +} = myTeam; +``` + +## Look up a pipeline + +```const myPipeline = concourse.getPipeline({ + teamName: "main", + pipelineName: "pipeline" +}); + +export const { + teamName, + pipelineName, + isExposed, + isPaused, + jsonConfig, + yamlConfig +} = myPipeline; +``` + +## Create a team + +Supports `owners`, `members`, `pipelineOperators`, and `viewers`. + +Specify users and groups by prefixing the strings: + +`user`: +`group`: + +```const myTeamResource = new concourse.Team("myTeam", { + teamName: "my-team", + owners: [ + "group:github:org-name", + "group:github:org-name:team-name", + "user:github:tlwr" + ], + viewers: [ + "user:github:samrees" + ] +}); +``` + +## Create a pipeline + +```const myPipelineResource = new concourse.Pipeline("myPipeline", { + teamName: "main", + pipelineName: "my-pipeline", + isExposed: true, + isPaused: true, + pipelineConfig: "./pipeline-config.yml", + pipelineConfigFormat: "yaml", + vars: { + foo: "bar" + } +}); +``` + +## Import + +Concourse teams can be imported using the team name: + +``` +$ pulumi import concourse:team:Team myTeamResource my-team +``` + +Concourse pipelines can be imported using the team name and pipeline name: + +``` +$ pulumi import concourse:pipeline:Pipeline myPipelineResource my-team:my-app +``` + + + + + + From 2f760053a5d48112deb4074527846d2fad666185 Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 08:34:40 -0400 Subject: [PATCH 06/14] Rename index.md to _index.md --- docs/{index.md => _index.md} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename docs/{index.md => _index.md} (100%) diff --git a/docs/index.md b/docs/_index.md similarity index 100% rename from docs/index.md rename to docs/_index.md From 84acabf9c1b104bb07503d1511e7b64692a4dde4 Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 08:36:13 -0400 Subject: [PATCH 07/14] Create installation_configuration.md --- docs/installation_configuration.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 docs/installation_configuration.md diff --git a/docs/installation_configuration.md b/docs/installation_configuration.md new file mode 100644 index 0000000..4decdb1 --- /dev/null +++ b/docs/installation_configuration.md @@ -0,0 +1,13 @@ +--- +title: Concourse Installation & Configuration +meta_desc: Information on how to install the Concourse provider for Pulumi. +layout: installation +--- + +## Installation + +The Concours provider is available as a package in Go + + + +## Setup From d3ac7f3d7b24d15dd3107e9914e7c40c62ecbf29 Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 08:37:02 -0400 Subject: [PATCH 08/14] Update installation_configuration.md --- docs/installation_configuration.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/installation_configuration.md b/docs/installation_configuration.md index 4decdb1..807f736 100644 --- a/docs/installation_configuration.md +++ b/docs/installation_configuration.md @@ -6,7 +6,7 @@ layout: installation ## Installation -The Concours provider is available as a package in Go +The Concours provider is available as a package in yaml, typescript and JSON From 675b44f097da0a88544436ce7ba9be491616603e Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 08:55:01 -0400 Subject: [PATCH 09/14] Update main.yml --- .github/workflows/main.yml | 379 ++----------------------------------- 1 file changed, 21 insertions(+), 358 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5bfcf88..e4367dc 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,365 +1,28 @@ name: main -"on": + +on: push: branches: - - main - paths-ignore: - - CHANGELOG.md + - main tags-ignore: - - v* - - sdk/* - - '**' + - v* + pull_request: + workflow_dispatch: -env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - NPM_TOKEN: ${{ secrets.NPM_TOKEN }} - NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }} - PROVIDER: concourse - PULUMI_GO_DEP_ROOT: ${{ github.workspace }}/.. - PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget - PULUMI_TEST_OWNER: "pulumiverse" - PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }} - PYPI_USERNAME: "__token__" - TRAVIS_OS_NAME: linux jobs: - build_sdk: - name: build_sdk - needs: prerequisites - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Checkout Scripts Repo - uses: actions/checkout@v3 - with: - path: ci-scripts - repository: jaxxstorm/scripts - ref: third_party - - name: Install Go - uses: actions/setup-go@v2 - with: - go-version: ${{matrix.goversion}} - - name: Install pulumictl - uses: jaxxstorm/action-install-gh-release@v1.2.0 - with: - repo: pulumi/pulumictl - - name: Install Pulumi CLI - uses: pulumi/action-install-pulumi-cli@v2 - - name: Setup Node - uses: actions/setup-node@v2 - with: - node-version: ${{matrix.nodeversion}} - registry-url: https://registry.npmjs.org - - name: Setup DotNet - uses: actions/setup-dotnet@v1 - with: - dotnet-version: ${{matrix.dotnetversion}} - - name: Setup Python - uses: actions/setup-python@v2 - with: - python-version: ${{matrix.pythonversion}} - - name: Download provider + gen binaries - uses: actions/download-artifact@v2 - with: - name: ${{ env.PROVIDER }}-provider.tar.gz - path: ${{ github.workspace }}/bin - - name: Untar provider binaries - run: |- - tar -zxf ${{ github.workspace }}/bin/provider.tar.gz -C ${{ github.workspace}}/bin - find ${{ github.workspace }} -name "pulumi-*-${{ env.PROVIDER }}" -print -exec chmod +x {} \; - - name: Install plugins - run: make install_plugins - - name: Update path - run: echo "${{ github.workspace }}/bin" >> $GITHUB_PATH - - name: Build SDK - run: make build_${{ matrix.language }} - - name: Check worktree clean - run: ./ci-scripts/ci/check-worktree-is-clean - - name: Compress SDK folder - run: tar -zcf sdk/${{ matrix.language }}.tar.gz -C sdk/${{ matrix.language }} - . - - name: Upload artifacts - uses: actions/upload-artifact@v2 - with: - name: ${{ matrix.language }}-sdk.tar.gz - path: ${{ github.workspace}}/sdk/${{ matrix.language }}.tar.gz - strategy: - fail-fast: true - matrix: - dotnetversion: - - 3.1.301 - goversion: - - 1.18.x - language: - - nodejs - - python - - dotnet - - go - nodeversion: - - 16.x - pythonversion: - - "3.7" prerequisites: - name: prerequisites - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Checkout Scripts Repo - uses: actions/checkout@v3 - with: - path: ci-scripts - repository: jaxxstorm/scripts - ref: third_party - - name: Install Go - uses: actions/setup-go@v2 - with: - go-version: ${{matrix.goversion}} - - name: Install pulumictl - uses: jaxxstorm/action-install-gh-release@v1.2.0 - with: - repo: pulumi/pulumictl - - name: Install Pulumi CLI - uses: pulumi/action-install-pulumi-cli@v2 - - if: github.event_name == 'pull_request' - name: Install Schema Tools - uses: jaxxstorm/action-install-gh-release@v1.2.0 - with: - repo: mikhailshilkov/schema-tools - - name: Build tfgen & provider binaries - run: make provider - # - if: github.event_name == 'pull_request' - # name: Check Schema is Valid - # run: |- - # echo 'SCHEMA_CHANGES<> $GITHUB_ENV - # schema-tools compare ${{ env.PROVIDER }} master --local-path=provider/cmd/pulumi-resource-${{ env.PROVIDER }}/schema.json >> $GITHUB_ENV - # echo 'EOF' >> $GITHUB_ENV - # - if: github.event_name == 'pull_request' - # name: Comment on PR with Details of Schema Check - # uses: thollander/actions-comment-pull-request@1.0.1 - # with: - # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - # message: | - # ### Does the PR have any schema changes? - - # ${{ env.SCHEMA_CHANGES }} - - name: Tar provider binaries - run: tar -zcf ${{ github.workspace }}/bin/provider.tar.gz -C ${{ github.workspace - }}/bin/ pulumi-resource-${{ env.PROVIDER }} pulumi-gen-${{ env.PROVIDER - }} - - name: Upload artifacts - uses: actions/upload-artifact@v2 - with: - name: ${{ env.PROVIDER }}-provider.tar.gz - path: ${{ github.workspace }}/bin/provider.tar.gz - strategy: - fail-fast: true - matrix: - dotnetversion: - - 3.1.301 - goversion: - - 1.18.x - nodeversion: - - 16.x - pythonversion: - - "3.7" - publish: - name: publish - needs: test - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Install Go - uses: actions/setup-go@v2 - with: - go-version: ${{matrix.goversion}} - - name: Install pulumictl - uses: jaxxstorm/action-install-gh-release@v1.2.0 - with: - repo: pulumi/pulumictl - - name: Install Pulumi CLI - uses: pulumi/action-install-pulumi-cli@v2 - - name: Set PreRelease Version - run: echo "GORELEASER_CURRENT_TAG=v$(pulumictl get version --language generic)" >> $GITHUB_ENV - - name: Run GoReleaser - uses: goreleaser/goreleaser-action@v2 - with: - args: -p 3 -f .goreleaser.prerelease.yml --rm-dist --skip-validate --timeout - 60m0s - version: latest - strategy: - fail-fast: true - matrix: - dotnetversion: - - 3.1.301 - goversion: - - 1.18.x - nodeversion: - - 16.x - pythonversion: - - "3.7" - publish_sdk: - name: publish_sdk - needs: publish - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Checkout Scripts Repo - uses: actions/checkout@v3 - with: - path: ci-scripts - repository: jaxxstorm/scripts - ref: third_party - - name: Install Go - uses: actions/setup-go@v2 - with: - go-version: ${{matrix.goversion}} - - name: Install pulumictl - uses: jaxxstorm/action-install-gh-release@v1.2.0 - with: - repo: pulumi/pulumictl - - name: Install Pulumi CLI - uses: pulumi/action-install-pulumi-cli@v2 - - name: Setup Node - uses: actions/setup-node@v2 - with: - node-version: ${{matrix.nodeversion}} - registry-url: https://registry.npmjs.org - - name: Setup DotNet - uses: actions/setup-dotnet@v1 - with: - dotnet-version: ${{matrix.dotnetversion}} - - name: Setup Python - uses: actions/setup-python@v2 - with: - python-version: ${{matrix.pythonversion}} - - name: Download python SDK - uses: actions/download-artifact@v2 - with: - name: python-sdk.tar.gz - path: ${{ github.workspace}}/sdk/ - - name: Uncompress python SDK - run: tar -zxf ${{github.workspace}}/sdk/python.tar.gz -C ${{github.workspace}}/sdk/python - - name: Download dotnet SDK - uses: actions/download-artifact@v2 - with: - name: dotnet-sdk.tar.gz - path: ${{ github.workspace}}/sdk/ - - name: Uncompress dotnet SDK - run: tar -zxf ${{github.workspace}}/sdk/dotnet.tar.gz -C ${{github.workspace}}/sdk/dotnet - - name: Download nodejs SDK - uses: actions/download-artifact@v2 - with: - name: nodejs-sdk.tar.gz - path: ${{ github.workspace}}/sdk/ - - name: Uncompress nodejs SDK - run: tar -zxf ${{github.workspace}}/sdk/nodejs.tar.gz -C ${{github.workspace}}/sdk/nodejs - - run: python -m pip install pip twine - - env: - NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} - name: Publish SDKs - run: ./ci-scripts/ci/publish-gen-package ${{ github.workspace }} - strategy: - fail-fast: true - matrix: - dotnetversion: - - 3.1.301 - goversion: - - 1.18.x - nodeversion: - - 16.x - pythonversion: - - "3.7" - test: - name: test - needs: build_sdk - runs-on: ubuntu-latest - steps: - - name: Checkout Repo - uses: actions/checkout@v2 - - name: Checkout Scripts Repo - uses: actions/checkout@v2 - with: - path: ci-scripts - repository: jaxxstorm/scripts - ref: third_party - - name: Unshallow clone for tags - run: git fetch --prune --unshallow --tags - - name: Install Go - uses: actions/setup-go@v2 - with: - go-version: ${{matrix.goversion}} - - name: Install pulumictl - uses: jaxxstorm/action-install-gh-release@v1.2.0 - with: - repo: pulumi/pulumictl - - name: Install Pulumi CLI - uses: pulumi/action-install-pulumi-cli@v2 - - name: Setup Node - uses: actions/setup-node@v2 - with: - node-version: ${{matrix.nodeversion}} - registry-url: https://registry.npmjs.org - - name: Setup DotNet - uses: actions/setup-dotnet@v1 - with: - dotnet-version: ${{matrix.dotnetversion}} - - name: Setup Python - uses: actions/setup-python@v2 - with: - python-version: ${{matrix.pythonversion}} - - name: Download provider + tfgen binaries - uses: actions/download-artifact@v2 - with: - name: ${{ env.PROVIDER }}-provider.tar.gz - path: ${{ github.workspace }}/bin - - name: Untar provider binaries - run: |- - tar -zxf ${{ github.workspace }}/bin/provider.tar.gz -C ${{ github.workspace}}/bin - find ${{ github.workspace }} -name "pulumi-*-${{ env.PROVIDER }}" -print -exec chmod +x {} \; - - run: dotnet nuget add source ${{ github.workspace }}/nuget - - name: Download SDK - uses: actions/download-artifact@v2 - with: - name: ${{ matrix.language }}-sdk.tar.gz - path: ${{ github.workspace}}/sdk/ - - name: Uncompress SDK folder - run: tar -zxf ${{ github.workspace }}/sdk/${{ matrix.language }}.tar.gz -C ${{ - github.workspace }}/sdk/${{ matrix.language }} - - name: Update path - run: echo "${{ github.workspace }}/bin" >> $GITHUB_PATH - - name: Install Python deps - run: |- - pip3 install virtualenv==20.0.23 - pip3 install pipenv - - name: Install dependencies - run: make install_${{ matrix.language}}_sdk - - name: Run tests - run: cd examples && go test -v -count=1 -cover -timeout 2h -tags=${{ matrix.language }} -parallel 4 . - strategy: - fail-fast: true - matrix: - dotnetversion: - - 3.1.301 - goversion: - - 1.18.x - language: - - nodejs - - python - - dotnet - - go - nodeversion: - - 16.x - pythonversion: - - "3.7" + permissions: + pull-requests: write + uses: pulumiverse/infra/.github/workflows/provider-prerequisites.yaml@actions-workflows-v0.0.4 + with: + provider: concourse + goversion: 1.20.x + build: + needs: prerequisites + uses: pulumiverse/infra/.github/workflows/provider-build-sdk.yaml@actions-workflows-v0.0.4 + with: + provider: concourse + goversion: 1.20.x + dotnetversion: 6.0 + nodeversion: 16.x + pythonversion: 3.8 From 1fe8e52fa84ad36cdd8434b9c503037bc1d31c9c Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 08:55:45 -0400 Subject: [PATCH 10/14] Create release.yml --- .github/workflows/release.yml | 143 ++++++++++++++++++++++++++++++++++ 1 file changed, 143 insertions(+) create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 0000000..a60db2c --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,143 @@ +name: release +on: + push: + tags: + - v*.*.* + +permissions: + contents: write + id-token: write + +env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} + NUGET_PUBLISH_KEY: ${{ secrets.NUGET_PUBLISH_KEY }} + NUGET_FEED_URL: https://api.nuget.org/v3/index.json + PROVIDER: concourse + PULUMI_GO_DEP_ROOT: ${{ github.workspace }}/.. + PULUMI_LOCAL_NUGET: ${{ github.workspace }}/nuget + PYPI_PASSWORD: ${{ secrets.PYPI_PASSWORD }} + PYPI_USERNAME: "__token__" + PUBLISH_PYPI: true + PUBLISH_NPM: true + PUBLISH_NUGET: true +jobs: + publish_binary: + name: publish + runs-on: ubuntu-latest + steps: + - name: Checkout Repo + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + - name: Unshallow clone for tags + run: git fetch --prune --unshallow --tags + - name: Install Go + uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 + with: + go-version: ${{matrix.goversion}} + - name: Install pulumictl + uses: jaxxstorm/action-install-gh-release@c5ead9a448b4660cf1e7866ee22e4dc56538031a # tag=v1.10.0 + with: + repo: pulumi/pulumictl + - name: Set PreRelease Version + run: echo "GORELEASER_CURRENT_TAG=v$(pulumictl get version --language generic)" >> $GITHUB_ENV + - uses: sigstore/cosign-installer@11086d25041f77fe8fe7b9ea4e48e3b9192b8f19 # v3.1.2 + - uses: anchore/sbom-action/download-syft@78fc58e266e87a38d4194b2137a3d4e9bcaf7ca1 # v0.14.3 + - name: Run GoReleaser + uses: goreleaser/goreleaser-action@7ec5c2b0c6cdda6e8bbb49444bc797dd33d74dd8 # v5.0.0 + with: + args: -p 3 release --rm-dist + version: latest + - name: Create tag + uses: actions/github-script@d7906e4ad0b1822421a7e6a35d5ca353c962f410 # tag=v6.4.1 + with: + script: | + github.rest.git.createRef({ + owner: context.repo.owner, + repo: context.repo.repo, + ref: 'refs/tags/sdk/${{ github.ref_name }}', + sha: context.sha + }) + strategy: + fail-fast: true + matrix: + goversion: + - 1.19.x + publish_sdk: + name: Publish SDKs + runs-on: ubuntu-latest + needs: publish_binary + steps: + - name: Checkout Repo + uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1 + - name: Unshallow clone for tags + run: git fetch --prune --unshallow --tags + - name: Install Go + uses: actions/setup-go@93397bea11091df50f3d7e59dc26a7711a8bcfbe # v4.1.0 + with: + go-version: ${{ matrix.goversion }} + - name: Install pulumictl + uses: jaxxstorm/action-install-gh-release@c5ead9a448b4660cf1e7866ee22e4dc56538031a # tag=v1.10.0 + with: + repo: pulumi/pulumictl + - name: Install Pulumi CLI + uses: pulumi/action-install-pulumi-cli@b374ceb6168550de27c6eba92e01c1a774040e11 # tag=v2.0.0 + - name: Setup Node + uses: actions/setup-node@5e21ff4d9bc1a8cf6de233a3057d20ec6b3fb69d # v3.8.1 + with: + node-version: ${{matrix.nodeversion}} + registry-url: ${{env.NPM_REGISTRY_URL}} + - name: Setup DotNet + uses: actions/setup-dotnet@3447fd6a9f9e57506b15f895c5b76d3b197dc7c2 # v3.2.0 + with: + dotnet-version: ${{matrix.dotnetverson}} + - name: Setup Python + uses: actions/setup-python@65d7f2d534ac1bc67fcd62888c5f4f3d2cb2b236 # v4.7.1 + with: + python-version: ${{matrix.pythonversion}} + - name: Build SDK + run: make build_${{ matrix.language }} + - name: Check worktree clean + run: | + git update-index -q --refresh + if ! git diff-files --quiet; then + >&2 echo "error: working tree is not clean, aborting!" + git status + git diff + exit 1 + fi + - if: ${{ matrix.language == 'python' && env.PUBLISH_PYPI == 'true' }} + name: Publish package to PyPI + uses: pypa/gh-action-pypi-publish@b7f401de30cb6434a1e19f805ff006643653240e # v1.8.10 + with: + user: ${{ env.PYPI_USERNAME }} + password: ${{ env.PYPI_PASSWORD }} + packages_dir: ${{github.workspace}}/sdk/python/bin/dist + - if: ${{ matrix.language == 'nodejs' && env.PUBLISH_NPM == 'true' }} + uses: JS-DevTools/npm-publish@6fd3bc8dad0cb1a484731fe6486a03193f98f037 # v3.0.0 + with: + access: "public" + token: ${{ env.NPM_TOKEN }} + package: ${{github.workspace}}/sdk/nodejs/bin/package.json + provenance: true + - if: ${{ matrix.language == 'dotnet' && env.PUBLISH_NUGET == 'true' }} + name: publish nuget package + run: | + dotnet nuget push ${{github.workspace}}/sdk/dotnet/bin/Debug/*.nupkg -s ${{ env.NUGET_FEED_URL }} -k ${{ env.NUGET_PUBLISH_KEY }} + echo "done publishing packages" + strategy: + fail-fast: true + matrix: + dotnetversion: + - 3.1.301 + goversion: + - 1.19.x + language: + - nodejs + - python + - dotnet + - go + nodeversion: + - 18.x + pythonversion: + - "3.9" From 6de4b9d72a46ca5df657c09124370fa6ddb3779a Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 08:56:26 -0400 Subject: [PATCH 11/14] Create upgrade-provider.yml --- .github/workflows/upgrade-provider.yml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 .github/workflows/upgrade-provider.yml diff --git a/.github/workflows/upgrade-provider.yml b/.github/workflows/upgrade-provider.yml new file mode 100644 index 0000000..0eff31e --- /dev/null +++ b/.github/workflows/upgrade-provider.yml @@ -0,0 +1,21 @@ +name: Upgrade provider +on: + workflow_dispatch: + issues: + types: + - opened + schedule: + - cron: "0 5 * * *" +env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} +jobs: + upgrade_provider: + name: upgrade-provider + runs-on: ubuntu-latest + permissions: + contents: write + pull-requests: write + issues: write + steps: + - name: Call upgrade provider action + uses: pulumi/pulumi-upgrade-provider-action@main From 653d1088da6fd2f2724a07a5673172d03561c466 Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 09:13:04 -0400 Subject: [PATCH 12/14] Delete .github/workflows/upgrade-provider.yml --- .github/workflows/upgrade-provider.yml | 21 --------------------- 1 file changed, 21 deletions(-) delete mode 100644 .github/workflows/upgrade-provider.yml diff --git a/.github/workflows/upgrade-provider.yml b/.github/workflows/upgrade-provider.yml deleted file mode 100644 index 0eff31e..0000000 --- a/.github/workflows/upgrade-provider.yml +++ /dev/null @@ -1,21 +0,0 @@ -name: Upgrade provider -on: - workflow_dispatch: - issues: - types: - - opened - schedule: - - cron: "0 5 * * *" -env: - GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} -jobs: - upgrade_provider: - name: upgrade-provider - runs-on: ubuntu-latest - permissions: - contents: write - pull-requests: write - issues: write - steps: - - name: Call upgrade provider action - uses: pulumi/pulumi-upgrade-provider-action@main From 337fdabd512a0e1b70aa05c18270f0dc0ecb008b Mon Sep 17 00:00:00 2001 From: tejavar <54866295+tejavar@users.noreply.github.com> Date: Thu, 26 Oct 2023 09:14:29 -0400 Subject: [PATCH 13/14] Create .goreleaser.yml --- .goreleaser.yml | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 .goreleaser.yml diff --git a/.goreleaser.yml b/.goreleaser.yml new file mode 100644 index 0000000..5f7424d --- /dev/null +++ b/.goreleaser.yml @@ -0,0 +1,30 @@ +archives: + - id: archive + name_template: "{{ .Binary }}-{{ .Tag }}-{{ .Os }}-{{ .Arch }}" +before: + hooks: + - make provider +builds: + - binary: pulumi-resource-concourse + dir: provider + env: + - CGO_ENABLED=0 + - GO111MODULE=on + goarch: + - amd64 + - arm64 + goos: + - darwin + - windows + - linux + ldflags: + - -s + - -w + - -X github.com/pulumiverse/pulumi-concourse/provider/pkg/version.Version={{.Tag}} + main: ./cmd/pulumi-resource-concourse/ +changelog: + skip: true +release: + disable: false +snapshot: + name_template: "{{ .Tag }}-SNAPSHOT" From ae107a4abb8e0131f67cc32e613b51827c2356c3 Mon Sep 17 00:00:00 2001 From: Tejitha Rudraraju Date: Thu, 26 Oct 2023 09:31:43 -0400 Subject: [PATCH 14/14] test release --- .github/workflows/main.yml | 4 ++-- .goreleaser.yml | 2 +- Makefile | 6 +++--- deployment-templates/.goreleaser.yml | 2 +- examples/simple/index.ts | 2 +- provider/cmd/pulumi-gen-concourse/main.go | 2 +- provider/cmd/pulumi-resource-concourse/main.go | 4 ++-- provider/cmd/pulumi-resource-concourse/schema.json | 14 +++++++------- provider/go.mod | 2 +- sdk/dotnet/Inputs/GetArgs.cs | 2 +- sdk/dotnet/Inputs/JobArgs.cs | 2 +- sdk/dotnet/Inputs/PipelineConfigArgs.cs | 2 +- sdk/dotnet/Inputs/PutArgs.cs | 2 +- sdk/dotnet/Inputs/TaskArgs.cs | 2 +- sdk/dotnet/Pipeline.cs | 2 +- sdk/dotnet/Provider.cs | 2 +- sdk/dotnet/Pulumiverse.Concourse.csproj | 8 ++++---- sdk/dotnet/Utilities.cs | 4 ++-- sdk/go.mod | 2 +- sdk/nodejs/package.json | 6 +++--- sdk/python/pulumiverse_concourse/__init__.py | 4 ++-- sdk/python/setup.py | 8 ++++---- 22 files changed, 42 insertions(+), 42 deletions(-) diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index e4367dc..a77a80a 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -13,13 +13,13 @@ jobs: prerequisites: permissions: pull-requests: write - uses: pulumiverse/infra/.github/workflows/provider-prerequisites.yaml@actions-workflows-v0.0.4 + uses: tejavar/infra/.github/workflows/provider-prerequisites.yaml@actions-workflows-v0.0.4 with: provider: concourse goversion: 1.20.x build: needs: prerequisites - uses: pulumiverse/infra/.github/workflows/provider-build-sdk.yaml@actions-workflows-v0.0.4 + uses: tejavar/infra/.github/workflows/provider-build-sdk.yaml@actions-workflows-v0.0.4 with: provider: concourse goversion: 1.20.x diff --git a/.goreleaser.yml b/.goreleaser.yml index 5f7424d..35ea398 100644 --- a/.goreleaser.yml +++ b/.goreleaser.yml @@ -20,7 +20,7 @@ builds: ldflags: - -s - -w - - -X github.com/pulumiverse/pulumi-concourse/provider/pkg/version.Version={{.Tag}} + - -X github.com/tejavar/pulumi-concourse/provider/pkg/version.Version={{.Tag}} main: ./cmd/pulumi-resource-concourse/ changelog: skip: true diff --git a/Makefile b/Makefile index 3a0dbb1..dcf1946 100644 --- a/Makefile +++ b/Makefile @@ -2,9 +2,9 @@ PROJECT_NAME := Pulumi Concourse Resource Provider PACK := concourse PACKDIR := sdk -PROJECT := github.com/pulumiverse/pulumi-concourse -NODE_MODULE_NAME := @pulumiverse/concourse -NUGET_PKG_NAME := Pulumiverse.Concourse +PROJECT := github.com/tejavar/pulumi-concourse +NODE_MODULE_NAME := @tejavar/concourse +NUGET_PKG_NAME := tejavar.Concourse PROVIDER := pulumi-resource-${PACK} CODEGEN := pulumi-gen-${PACK} diff --git a/deployment-templates/.goreleaser.yml b/deployment-templates/.goreleaser.yml index 903cefa..c1bc5de 100644 --- a/deployment-templates/.goreleaser.yml +++ b/deployment-templates/.goreleaser.yml @@ -18,7 +18,7 @@ builds: - linux ldflags: # The line below MUST align with the module in current provider/go.mod - - -X github.com/pulumiverse/pulumi-concourse/provider/pkg/version.Version={{.Tag }} + - -X github.com/tejavar/pulumi-concourse/provider/pkg/version.Version={{.Tag }} main: ./cmd/pulumi-resource-concourse/ changelog: skip: true diff --git a/examples/simple/index.ts b/examples/simple/index.ts index 4f0d01d..3935efc 100644 --- a/examples/simple/index.ts +++ b/examples/simple/index.ts @@ -1,4 +1,4 @@ -import * as concourse from "@pulumiverse/concourse"; +import * as concourse from "@tejavar/concourse"; const random = new concourse.Random("my-random", { length: 24 }); diff --git a/provider/cmd/pulumi-gen-concourse/main.go b/provider/cmd/pulumi-gen-concourse/main.go index 80ad633..f8a4fb5 100644 --- a/provider/cmd/pulumi-gen-concourse/main.go +++ b/provider/cmd/pulumi-gen-concourse/main.go @@ -28,7 +28,7 @@ import ( pythongen "github.com/pulumi/pulumi/pkg/v3/codegen/python" "github.com/pulumi/pulumi/pkg/v3/codegen/schema" "github.com/pulumi/pulumi/sdk/v3/go/common/util/contract" - providerVersion "github.com/pulumiverse/pulumi-concourse/provider/pkg/version" + providerVersion "github.com/tejavar/pulumi-concourse/provider/pkg/version" ) // TemplateDir is the path to the base directory for code generator templates. diff --git a/provider/cmd/pulumi-resource-concourse/main.go b/provider/cmd/pulumi-resource-concourse/main.go index 4669bac..b3147e8 100644 --- a/provider/cmd/pulumi-resource-concourse/main.go +++ b/provider/cmd/pulumi-resource-concourse/main.go @@ -17,8 +17,8 @@ package main import ( _ "embed" - "github.com/pulumiverse/pulumi-concourse/provider/pkg/provider" - "github.com/pulumiverse/pulumi-concourse/provider/pkg/version" + "github.com/tejavar/pulumi-concourse/provider/pkg/provider" + "github.com/tejavar/pulumi-concourse/provider/pkg/version" ) var providerName = "concourse" diff --git a/provider/cmd/pulumi-resource-concourse/schema.json b/provider/cmd/pulumi-resource-concourse/schema.json index 85db9cf..a4ddc0d 100644 --- a/provider/cmd/pulumi-resource-concourse/schema.json +++ b/provider/cmd/pulumi-resource-concourse/schema.json @@ -8,10 +8,10 @@ "category/ci", "kind/native" ], - "homepage": "https://github.com/pulumiverse", + "homepage": "https://github.com/tejavar", "license": "Apache-2.0", - "repository": "https://github.com/pulumiverse/pulumi-concourse", - "publisher": "Pulumiverse", + "repository": "https://github.com/tejavar/pulumi-concourse", + "publisher": "tejavar", "types": { "concourse:index:Info": { "description": "Server Information", @@ -140,20 +140,20 @@ "packageReferences": { "Pulumi": "3.*" }, - "rootNamespace": "Pulumiverse" + "rootNamespace": "tejavar" }, "go": { "generateResourceContainerTypes": true, - "importBasePath": "github.com/pulumiverse/pulumi-concourse/sdk/go/concourse" + "importBasePath": "github.com/tejavar/pulumi-concourse/sdk/go/concourse" }, "nodejs": { "dependencies": { "@pulumi/pulumi": "^3.0.0" }, - "packageName": "@pulumiverse/concourse" + "packageName": "@tejavar/concourse" }, "python": { - "packageName": "pulumiverse_concourse", + "packageName": "tejavar_concourse", "requires": { "pulumi": ">=3.0.0,<4.0.0" } diff --git a/provider/go.mod b/provider/go.mod index f30be09..5e9b520 100644 --- a/provider/go.mod +++ b/provider/go.mod @@ -1,4 +1,4 @@ -module github.com/pulumiverse/pulumi-concourse/provider +module github.com/tejavar/pulumi-concourse/provider go 1.18 diff --git a/sdk/dotnet/Inputs/GetArgs.cs b/sdk/dotnet/Inputs/GetArgs.cs index 9d47108..87d3f06 100644 --- a/sdk/dotnet/Inputs/GetArgs.cs +++ b/sdk/dotnet/Inputs/GetArgs.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse.Inputs +namespace tejavar.Concourse.Inputs { /// diff --git a/sdk/dotnet/Inputs/JobArgs.cs b/sdk/dotnet/Inputs/JobArgs.cs index 33ac2b9..583f176 100644 --- a/sdk/dotnet/Inputs/JobArgs.cs +++ b/sdk/dotnet/Inputs/JobArgs.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse.Inputs +namespace tejavar.Concourse.Inputs { /// diff --git a/sdk/dotnet/Inputs/PipelineConfigArgs.cs b/sdk/dotnet/Inputs/PipelineConfigArgs.cs index 384b5ce..6c85052 100644 --- a/sdk/dotnet/Inputs/PipelineConfigArgs.cs +++ b/sdk/dotnet/Inputs/PipelineConfigArgs.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse.Inputs +namespace tejavar.Concourse.Inputs { /// diff --git a/sdk/dotnet/Inputs/PutArgs.cs b/sdk/dotnet/Inputs/PutArgs.cs index e51ed38..619c8d4 100644 --- a/sdk/dotnet/Inputs/PutArgs.cs +++ b/sdk/dotnet/Inputs/PutArgs.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse.Inputs +namespace tejavar.Concourse.Inputs { /// diff --git a/sdk/dotnet/Inputs/TaskArgs.cs b/sdk/dotnet/Inputs/TaskArgs.cs index 7b74753..a84fc5c 100644 --- a/sdk/dotnet/Inputs/TaskArgs.cs +++ b/sdk/dotnet/Inputs/TaskArgs.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse.Inputs +namespace tejavar.Concourse.Inputs { /// diff --git a/sdk/dotnet/Pipeline.cs b/sdk/dotnet/Pipeline.cs index 6747ec3..7fcc75f 100644 --- a/sdk/dotnet/Pipeline.cs +++ b/sdk/dotnet/Pipeline.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse +namespace tejavar.Concourse { [ConcourseResourceType("concourse:index:Pipeline")] public partial class Pipeline : global::Pulumi.CustomResource diff --git a/sdk/dotnet/Provider.cs b/sdk/dotnet/Provider.cs index 9e522f6..2908f02 100644 --- a/sdk/dotnet/Provider.cs +++ b/sdk/dotnet/Provider.cs @@ -8,7 +8,7 @@ using Pulumi.Serialization; using Pulumi; -namespace Pulumiverse.Concourse +namespace tejavar.Concourse { /// /// The provider type for the concourse package. diff --git a/sdk/dotnet/Pulumiverse.Concourse.csproj b/sdk/dotnet/Pulumiverse.Concourse.csproj index 3c6b723..8ccb1fa 100644 --- a/sdk/dotnet/Pulumiverse.Concourse.csproj +++ b/sdk/dotnet/Pulumiverse.Concourse.csproj @@ -2,12 +2,12 @@ true - Pulumiverse - Pulumiverse + tejavar + tejavar A Pulumi package for creating and managing Concourse CI resources. Apache-2.0 - https://github.com/pulumiverse - https://github.com/pulumiverse/pulumi-concourse + https://github.com/tejavar + https://github.com/tejavar/pulumi-concourse logo.png netcoreapp3.1 diff --git a/sdk/dotnet/Utilities.cs b/sdk/dotnet/Utilities.cs index 81940e2..1f4b578 100644 --- a/sdk/dotnet/Utilities.cs +++ b/sdk/dotnet/Utilities.cs @@ -1,7 +1,7 @@ // *** WARNING: this file was generated by pulumigen. *** // *** Do not edit by hand unless you're certain you know what you are doing! *** -namespace Pulumiverse.Concourse +namespace tejavar.Concourse { static class Utilities { @@ -62,7 +62,7 @@ static class Utilities static Utilities() { var assembly = global::System.Reflection.IntrospectionExtensions.GetTypeInfo(typeof(Utilities)).Assembly; - using var stream = assembly.GetManifestResourceStream("Pulumiverse.Concourse.version.txt"); + using var stream = assembly.GetManifestResourceStream("tejavar.Concourse.version.txt"); using var reader = new global::System.IO.StreamReader(stream ?? throw new global::System.NotSupportedException("Missing embedded version.txt file")); version = reader.ReadToEnd().Trim(); var parts = version.Split("\n"); diff --git a/sdk/go.mod b/sdk/go.mod index efb5134..43ae64e 100644 --- a/sdk/go.mod +++ b/sdk/go.mod @@ -1,4 +1,4 @@ -module github.com/pulumiverse/pulumi-concourse/sdk/v3 +module github.com/tejavar/pulumi-concourse/sdk/v3 go 1.18 diff --git a/sdk/nodejs/package.json b/sdk/nodejs/package.json index 253f51c..639b9ca 100644 --- a/sdk/nodejs/package.json +++ b/sdk/nodejs/package.json @@ -1,5 +1,5 @@ { - "name": "@pulumiverse/concourse", + "name": "@tejavar/concourse", "version": "${VERSION}", "keywords": [ "pulumi", @@ -7,8 +7,8 @@ "category/ci", "kind/native" ], - "homepage": "https://github.com/pulumiverse", - "repository": "https://github.com/pulumiverse/pulumi-concourse", + "homepage": "https://github.com/tejavar", + "repository": "https://github.com/tejavar/pulumi-concourse", "license": "Apache-2.0", "scripts": { "build": "tsc", diff --git a/sdk/python/pulumiverse_concourse/__init__.py b/sdk/python/pulumiverse_concourse/__init__.py index 1937d2b..4a43f7f 100644 --- a/sdk/python/pulumiverse_concourse/__init__.py +++ b/sdk/python/pulumiverse_concourse/__init__.py @@ -14,7 +14,7 @@ { "pkg": "concourse", "mod": "index", - "fqn": "pulumiverse_concourse", + "fqn": "tejavar_concourse", "classes": { "concourse:index:Pipeline": "Pipeline" } @@ -26,7 +26,7 @@ { "pkg": "concourse", "token": "pulumi:providers:concourse", - "fqn": "pulumiverse_concourse", + "fqn": "tejavar_concourse", "class": "Provider" } ] diff --git a/sdk/python/setup.py b/sdk/python/setup.py index b0edccf..14f265c 100644 --- a/sdk/python/setup.py +++ b/sdk/python/setup.py @@ -37,7 +37,7 @@ def readme(): return "concourse Pulumi Package - Development Version" -setup(name='pulumiverse_concourse', +setup(name='tejavar_concourse', version=VERSION, description="A Pulumi package for creating and managing Concourse CI resources.", long_description=readme(), @@ -46,14 +46,14 @@ def readme(): 'install': InstallPluginCommand, }, keywords='pulumi concourse category/ci kind/native', - url='https://github.com/pulumiverse', + url='https://github.com/tejavar', project_urls={ - 'Repository': 'https://github.com/pulumiverse/pulumi-concourse' + 'Repository': 'https://github.com/tejavar/pulumi-concourse' }, license='Apache-2.0', packages=find_packages(), package_data={ - 'pulumiverse_concourse': [ + 'tejavar_concourse': [ 'py.typed', 'pulumi-plugin.json', ]