-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #2 from jfrog/create-provider-and-add-signing-key-…
…resource Create provider and add signing key resource
- Loading branch information
Showing
41 changed files
with
3,403 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Contributor Code of Conduct | ||
|
||
As contributors and maintainers of this project, and in the interest of fostering an open and welcoming community, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities. | ||
|
||
We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, ethnicity, age, religion, or nationality. | ||
|
||
Examples of unacceptable behavior by participants include: | ||
|
||
* The use of sexualized language or imagery | ||
* Personal attacks | ||
* Trolling or insulting/derogatory comments | ||
* Public or private harassment | ||
* Publishing other's private information, such as physical or electronic addresses, without explicit permission | ||
* Submitting contributions or comments that you know to violate the intellectual property or privacy rights of others | ||
* Other unethical or unprofessional conduct | ||
|
||
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. | ||
By adopting this Code of Conduct, project maintainers commit themselves to fairly and consistently applying these principles to every aspect of managing this project. Project maintainers who do not follow or enforce the Code of Conduct may be permanently removed from the project team. | ||
|
||
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. | ||
|
||
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting a project maintainer. Complaints will result in a response and be reviewed and investigated in a way that is deemed necessary and appropriate to the circumstances. Maintainers are obligated to maintain confidentiality with regard to the reporter of an incident. | ||
|
||
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.3.0, available at [http://contributor-covenant.org/version/1/3/0/][version] | ||
|
||
[homepage]: http://contributor-covenant.org | ||
[version]: http://contributor-covenant.org/version/1/3/0/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
--- | ||
name: Bug report | ||
about: Create a report to help us improve | ||
title: '' | ||
labels: bug | ||
assignees: alexhung | ||
|
||
--- | ||
|
||
**Describe the bug** | ||
A clear and concise description of what the bug is. | ||
|
||
**Requirements for and issue** | ||
- [ ] A description of the bug | ||
- [ ] A fully functioning terraform snippet that can be copy&pasted (no outside files or ENV vars unless that's part of the issue). **If this is not supplied, this issue will likely be closed without any effort expended.** | ||
- [ ] Your version of artifactory (you can `curl` it at `$host/artifactory/api/system/version` | ||
- [ ] Your version of terraform | ||
- [ ] Your version of terraform provider | ||
|
||
**Expected behavior** | ||
A clear and concise description of what you expected to happen. | ||
|
||
**Additional context** | ||
Add any other context about the problem here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
--- | ||
name: Feature request | ||
about: Suggest an idea for this project | ||
title: '' | ||
labels: feature-request | ||
assignees: alexhung | ||
|
||
--- | ||
|
||
**Is your feature request related to a problem? Please describe.** | ||
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] | ||
|
||
**Describe the solution you'd like** | ||
A clear and concise description of what you want to happen. | ||
|
||
**Describe alternatives you've considered** | ||
A clear and concise description of any alternative solutions or features you've considered. | ||
|
||
**Additional context** | ||
Add any other context or screenshots about the feature request here. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# To get started with Dependabot version updates, you'll need to specify which | ||
# package ecosystems to update and where the package manifests are located. | ||
# Please see the documentation for all configuration options: | ||
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates | ||
|
||
version: 2 | ||
updates: | ||
- package-ecosystem: gomod | ||
directory: / | ||
schedule: | ||
interval: "daily" |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
changelog: | ||
exclude: | ||
labels: | ||
- ignore-for-release | ||
categories: | ||
- title: Breaking Changes 🛠 | ||
labels: | ||
- breaking-change | ||
- title: Improvements/Enhancements 🎉 | ||
labels: | ||
- enhancement | ||
- new-feature | ||
- title: Bug Fixes 🛠 | ||
labels: | ||
- bug | ||
- title: 👒 Dependencies | ||
labels: | ||
- dependencies | ||
- title: Other Changes 📚 | ||
labels: | ||
- "*" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,157 @@ | ||
on: | ||
pull_request: | ||
branches: | ||
- main | ||
types: [opened,synchronize] | ||
paths: | ||
- '**.go' | ||
workflow_dispatch: | ||
|
||
name: Terraform & OpenTofu Acceptance Tests | ||
|
||
jobs: | ||
acceptance-tests-matrix: | ||
name: ${{ matrix.cli }} | ||
runs-on: ubuntu-latest | ||
continue-on-error: false | ||
environment: development | ||
strategy: | ||
fail-fast: true | ||
matrix: | ||
cli: [terraform, tofu] | ||
outputs: | ||
tf_version: ${{ steps.get_terraform_cli_version.outputs.version }} | ||
tofu_version: ${{ steps.get_opentofu_cli_version.outputs.version }} | ||
artifactory_version: ${{ steps.get_artifactory_version.outputs.version }} | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v4 | ||
- name: Unshallow | ||
run: git fetch --prune --unshallow | ||
- name: Set up Go | ||
uses: actions/setup-go@v5 | ||
with: | ||
go-version: 1.21 | ||
- name: Install Terraform CLI | ||
uses: hashicorp/setup-terraform@v3 | ||
if: ${{ matrix.cli == 'terraform' }} | ||
- name: Get Terraform CLI version | ||
id: get_terraform_cli_version | ||
if: ${{ matrix.cli == 'terraform' }} | ||
run: | | ||
TF_VERSION=$(terraform -v -json | jq -r .terraform_version) | ||
echo $TF_VERSION | ||
echo "version=$TF_VERSION" >> "$GITHUB_OUTPUT" | ||
- name: Install OpenTofu CLI | ||
uses: opentofu/setup-opentofu@v1 | ||
if: ${{ matrix.cli == 'tofu' }} | ||
with: | ||
tofu_wrapper: false | ||
- name: Get OpenTofu CLI version | ||
id: get_opentofu_cli_version | ||
if: ${{ matrix.cli == 'tofu' }} | ||
run: | | ||
echo "TF_ACC_TERRAFORM_PATH=$(which tofu)" >> "$GITHUB_ENV" | ||
echo "TF_ACC_PROVIDER_NAMESPACE=hashicorp" >> "$GITHUB_ENV" | ||
echo "TF_ACC_PROVIDER_HOST=registry.opentofu.org" >> "$GITHUB_ENV" | ||
TOFU_VERSION=$(tofu -v -json | jq -r .terraform_version) | ||
echo $TOFU_VERSION | ||
echo "version=$TOFU_VERSION" >> "$GITHUB_OUTPUT" | ||
- name: Install GoReleaser | ||
uses: goreleaser/goreleaser-action@v6 | ||
with: | ||
install-only: true | ||
- name: Get Artifactory version | ||
id: get_artifactory_version | ||
env: | ||
JFROG_URL: ${{ secrets.JFROG_URL }} | ||
JFROG_ACCESS_TOKEN: ${{ secrets.JFROG_ACCESS_TOKEN }} | ||
run: | | ||
RT_VERSION=$(curl -s -L "${JFROG_URL}/artifactory/api/system/version" -H "Authorization: Bearer ${JFROG_ACCESS_TOKEN}" | jq -r .version) | ||
echo $RT_VERSION | ||
echo "version=$RT_VERSION" >> "$GITHUB_OUTPUT" | ||
- name: Execute acceptance tests | ||
env: | ||
JFROG_URL: ${{ secrets.JFROG_URL }} | ||
JFROG_ACCESS_TOKEN: ${{ secrets.JFROG_ACCESS_TOKEN }} | ||
run: make acceptance | ||
- name: Install provider | ||
run: | | ||
export PROVIDER_VERSION=$(git describe --tags --abbrev=0 | sed -n 's/v\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1.\2.\3/p') | ||
cat sample.tf | sed -e "s/version =.*/version = \"${PROVIDER_VERSION}\"/g" > sample.tf.tmp | ||
cp sample.tf.tmp sample.tf && rm sample.tf.tmp | ||
TERRAFORM_CLI=${{ matrix.cli }} make install | ||
- name: Send workflow status to Slack | ||
uses: slackapi/slack-github-action@v1.26.0 | ||
with: | ||
payload: | | ||
{ | ||
"text": "${{ github.workflow }} https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}/job/${{ github.job }} ${{ matrix.cli }} GitHub Action result: ${{ job.status == 'success' && ':white_check_mark:' || ':x:' }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}", | ||
"blocks": [ | ||
{ | ||
"type": "section", | ||
"text": { | ||
"type": "mrkdwn", | ||
"text": "${{ github.workflow }} <https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}/job/${{ github.job }}|${{ matrix.cli }} GitHub Action result>: ${{ job.status == 'success' && ':white_check_mark:' || ':x:' }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}" | ||
} | ||
} | ||
] | ||
} | ||
env: | ||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_PR_WEBHOOK }} | ||
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK | ||
|
||
update-changelog: | ||
runs-on: ubuntu-latest | ||
needs: acceptance-tests-matrix | ||
if: ${{ github.event_name == 'pull_request' }} && ${{ needs.acceptance-tests-matrix.result == 'success' }} | ||
permissions: | ||
contents: write | ||
steps: | ||
- uses: actions/checkout@v4 | ||
with: | ||
fetch-depth: 0 | ||
ref: ${{ github.event.pull_request.head.ref }} | ||
- name: Update CHANGELOG and push commit | ||
env: | ||
ARTIFACTORY_VERSION: ${{ needs.acceptance-tests-matrix.outputs.artifactory_version }} | ||
TERRAFORM_VERSION: ${{ needs.acceptance-tests-matrix.outputs.tf_version }} | ||
OPENTOFU_VERSION: ${{ needs.acceptance-tests-matrix.outputs.tofu_version }} | ||
run: | | ||
echo "Adding Artifactory version to CHANGELOG.md" | ||
sed -i -E "0,/(##\s.+\..+\..+\s\(.+\)).*/ s/(##\s.+\..+\..+\s\(.+\)).*/\1. Tested on Artifactory $ARTIFACTORY_VERSION with Terraform $TERRAFORM_VERSION and OpenTofu $OPENTOFU_VERSION/" CHANGELOG.md | ||
head -10 CHANGELOG.md | ||
git add CHANGELOG.md | ||
export REGEX="Changes to be committed*" | ||
export GIT_STATUS=$(git status) | ||
if [[ ${GIT_STATUS} =~ ${REGEX} ]]; then | ||
echo "Commiting changes" | ||
git config --global user.name 'JFrog CI' | ||
git config --global user.email 'jfrog-solutions-ci+1@jfrog.com' | ||
git config --get user.name | ||
git config --get user.email | ||
git commit --author="JFrog CI <jfrog-solutions-ci+1@jfrog.com>" -m "JFrog Pipelines - Add Artifactory version to CHANGELOG.md" | ||
git push | ||
else | ||
echo "There is nothing to commit: Artifactory version hadn't changed." | ||
fi | ||
- name: Send workflow status to Slack | ||
uses: slackapi/slack-github-action@v1.26.0 | ||
if: success() | ||
with: | ||
payload: | | ||
{ | ||
"text": "Terraform Provider Distribution. A new PR was submitted by ${{ github.event.pull_request.user.login }} - ${{ github.event.pull_request.html_url }}, branch ${{ github.event.pull_request.base.ref }}. Changes tested successfully. <@U01H1SLSPA8> or <@UNDRUL1EU> please, review and merge.", | ||
"blocks": [ | ||
{ | ||
"type": "section", | ||
"text": { | ||
"type": "mrkdwn", | ||
"text": "<http://github.com/${{ github.repository }}|Terraform Provider Distribution>. A new PR was submitted by *${{ github.event.pull_request.user.login }}* - <${{ github.event.pull_request.html_url }}|${{ github.event.pull_request.title }}>, branch *${{ github.event.pull_request.base.ref }}*. Changes tested successfully. <@U01H1SLSPA8> or <@UNDRUL1EU> please, review and merge." | ||
} | ||
} | ||
] | ||
} | ||
env: | ||
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_PR_WEBHOOK }} | ||
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
name: "CHANGELOG check" | ||
on: | ||
pull_request: | ||
types: [opened, synchronize, reopened, labeled, unlabeled] | ||
|
||
jobs: | ||
build: | ||
name: Check Actions | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v1 | ||
- name: Changelog check | ||
uses: Zomzog/changelog-checker@v1.2.0 | ||
with: | ||
fileName: CHANGELOG.md | ||
noChangelogLabel: "no changelog" | ||
checkNotification: Detailed | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |
Oops, something went wrong.