Comments (1)
Update: Release/Registry team has a staging
environment however it is public so does not satisfy our requirements; creating a new staging
environment would be ideal but the engineering efforts (outside of our team) to do so may not meet our GA timeline as well.
Initial Release Components needed on GA Day:
- Github Milestone for next release -- creation currently manual
- Materials for Publishing to the Registry:
- Changes Needed in Registry DB:
- display name and logo e.g. https://github.com/hashicorp/terraform-registry/pull/1335
- Version Manifest: https://www.terraform.io/docs/plugin/framework/publishing.html
- Changes Needed in Registry DB:
- Github Release -- creation currently triggered by TeamCity config (plan atm is to use the same config used by providers); closing released milestone currently manual
Current Solution for Validating Pre-Release:
- Adopt the TF Provider GithubActions workflow for pre-release and future GA release and beyond
Alt Solution for Validating Pre-Release (not entirely E2E):
-* Make a copy of Terraform Provider Release TC configuration and only enable steps 1-3 (terraform
download through compile
); steps 4 (release) and 5 (website) will not be validated as we want content to be private
- 👉 This does bring a point to mention that perhaps tf-deploy/hc-releases is not setup to do the following per
Publishing to the Registry
documentation:
When uploading your new provider version to GitHub, next to the zip files containing your binaries for each platform, include a file named terraform-provider-$NAME_$VERSION_manifest.json (where $NAME is your provider's name, like random and $VERSION is your provider's version, like 1.2.3)...Include the SHA-256 checksum of this JSON file in your SHA256SUMS file.
⚠️ Currently there is logic for setting the protocol version, but it does not account for expected manifest file and V6-only support: Adding to the below script can still be validated per TeamCity configuration during testing if the change is merged intotf-deploy
https://github.com/hashicorp/tf-deploy/blob/21b5687964fbf9a6287ce44b20529f8453696ac2/scripts/init.sh#L217-L237
# Possible addition
versionManifestPath=$GOPATH/src/github.com/$PROVIDER_ORG/terraform-provider-$PROVIDER_NAME/terraform-provider-${PROVIDER_NAME}_${DEPLOYMENT_TARGET_VERSION}_manifest.json
if [ -f $versionManifestPath ]; then
printf "Provider is Protocol 6 only - updating build settings..\n"
printf "##teamcity[setParameter name='env.PROTOCOL_VERSION' value='6']\n"
printf "##teamcity[setParameter name='env.PROTOCOL_VERSIONS' value='6.0']"
fi
⚠️ Currently there is logic to create the SHA256SUMS and SHA256SUMS.sig files with the os-specifc archives but this does not include the new manifest file: Adding to the below script will NOT be validated per TeamCity configuration during testing
https://github.com/hashicorp/tf-deploy/blob/21b5687964fbf9a6287ce44b20529f8453696ac2/scripts/release.sh#L69-L81- Since a provider is downloaded with the SHA2456SUMS and SHA256SUMS.sig files I believe we'd have to update the script to include the manifest file but unclear if the manifest file needs to physically exist in https://releases.hashicorp.com/
Additional Findings:
- The TC config defines a
DEPLOY_ENV
parameters but it's not used intf-deploy
scripts or handed off tohc-releases
- There exist a
staging.releases.hashicorp.com
for provider artifacts and ahttps://staging-registry.terraform.io/
(will be replaced byhttps://registry.staging.terraform.io/
soon)both of which are public
from terraform-provider-awscc.
Related Issues (20)
- awscc_glue_trigger: Plan fails with tag object expected to be string type
- awscc_ec2_vpc resource and state don't converge HOT 2
- Missing resource `awscc_timestream_influx_db_instance`
- awscc_controltower_enabled_baseline - resource suppression
- awscc_ecr_repository: drift detected between subsequent terraform applies HOT 3
- conversation_log_settings always shows change for resource awscc_lex_bot_alias HOT 4
- awscc_lex_bot_alias lifecycle {ignore_changes} does not ignore changes HOT 1
- Ignore empty patch document for Cloud Control API UpdateResource
- awscc_iotsitewise_asset_model resource detects drift on unchanged config in subsequent run and never completes HOT 7
- awscc_iotwireless_wireless_gateway resource not updating AWS tags
- Attempting to change description field in awscc_iotsitewise_asset_model resource throws AWS SDK Go Service Operation Incomplete error HOT 6
- Resource Suppression: `awscc_apigatewayv2_integration`
- Implement awscc_sts_caller_identity HOT 3
- awscc_s3_bucket: drift detected between subsequent terraform applies HOT 1
- Build with Go 1.23.0
- awscc_cloudformation_stack_set with template_url parameter set cannot be updated
- `changelog-newversion` GitHub action failing after release HOT 1
- awscc_fis_experiment_template Issues with ASG parameter: availabilityzoneIdentifiers HOT 4
- awscc_bedrock_agent: auto_prepare set to false leads to failed deployment
- awscc_fms_policy - Creating a resource with an invalid property name returns an internal AWS error. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from terraform-provider-awscc.