mirror of
https://github.com/hashicorp/terraform.git
synced 2026-03-21 18:10:30 -04:00
Some checks are pending
build / Determine intended Terraform version (push) Waiting to run
build / Determine Go toolchain version (push) Waiting to run
build / Generate release metadata (push) Blocked by required conditions
build / Build for freebsd_386 (push) Blocked by required conditions
build / Build for linux_386 (push) Blocked by required conditions
build / Build for openbsd_386 (push) Blocked by required conditions
build / Build for windows_386 (push) Blocked by required conditions
build / Build for darwin_amd64 (push) Blocked by required conditions
build / Build for freebsd_amd64 (push) Blocked by required conditions
build / Build for linux_amd64 (push) Blocked by required conditions
build / Build for openbsd_amd64 (push) Blocked by required conditions
build / Build for solaris_amd64 (push) Blocked by required conditions
build / Build for windows_amd64 (push) Blocked by required conditions
build / Build for freebsd_arm (push) Blocked by required conditions
build / Build for linux_arm (push) Blocked by required conditions
build / Build for darwin_arm64 (push) Blocked by required conditions
build / Build for linux_arm64 (push) Blocked by required conditions
build / Build for windows_arm64 (push) Blocked by required conditions
build / Build Docker image for linux_386 (push) Blocked by required conditions
build / Build Docker image for linux_amd64 (push) Blocked by required conditions
build / Build Docker image for linux_arm (push) Blocked by required conditions
build / Build Docker image for linux_arm64 (push) Blocked by required conditions
build / Build e2etest for linux_386 (push) Blocked by required conditions
build / Build e2etest for windows_386 (push) Blocked by required conditions
build / Build e2etest for darwin_amd64 (push) Blocked by required conditions
build / Build e2etest for linux_amd64 (push) Blocked by required conditions
build / Build e2etest for windows_amd64 (push) Blocked by required conditions
build / Build e2etest for linux_arm (push) Blocked by required conditions
build / Build e2etest for darwin_arm64 (push) Blocked by required conditions
build / Build e2etest for linux_arm64 (push) Blocked by required conditions
build / Run e2e test for linux_386 (push) Blocked by required conditions
build / Run e2e test for windows_386 (push) Blocked by required conditions
build / Run e2e test for darwin_amd64 (push) Blocked by required conditions
build / Run e2e test for linux_amd64 (push) Blocked by required conditions
build / Run e2e test for windows_amd64 (push) Blocked by required conditions
build / Run e2e test for linux_arm (push) Blocked by required conditions
build / Run e2e test for linux_arm64 (push) Blocked by required conditions
build / Run terraform-exec test for linux amd64 (push) Blocked by required conditions
Quick Checks / Unit Tests (push) Waiting to run
Quick Checks / Race Tests (push) Waiting to run
Quick Checks / End-to-end Tests (push) Waiting to run
Quick Checks / Code Consistency Checks (push) Waiting to run
Bumps the github-actions-backward-compatible group with 1 update: [actions/setup-go](https://github.com/actions/setup-go).
Updates `actions/setup-go` from 6.2.0 to 6.3.0
- [Release notes](https://github.com/actions/setup-go/releases)
- [Commits](7a3fe6cf4c...4b73464bb3)
---
updated-dependencies:
- dependency-name: actions/setup-go
dependency-version: 6.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: github-actions-backward-compatible
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
98 lines
3.6 KiB
YAML
98 lines
3.6 KiB
YAML
---
|
|
name: build_terraform
|
|
|
|
# This workflow is intended to be called by the build workflow. The crt make
|
|
# targets that are utilized automatically determine build metadata and
|
|
# handle building and packing Terraform.
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
cgo-enabled:
|
|
type: string
|
|
required: true
|
|
goos:
|
|
required: true
|
|
type: string
|
|
goarch:
|
|
required: true
|
|
type: string
|
|
go-version:
|
|
type: string
|
|
package-name:
|
|
type: string
|
|
default: terraform
|
|
product-version:
|
|
type: string
|
|
required: true
|
|
ld-flags:
|
|
type: string
|
|
required: true
|
|
runson:
|
|
type: string
|
|
required: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ inputs.runson }}
|
|
name: Terraform ${{ inputs.goos }} ${{ inputs.goarch }} v${{ inputs.product-version }}
|
|
steps:
|
|
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
- uses: actions/setup-go@4b73464bb391d4059bd26b0524d20df3927bd417 # v6.3.0
|
|
with:
|
|
go-version: ${{ inputs.go-version }}
|
|
- name: Build Terraform
|
|
env:
|
|
GOOS: ${{ inputs.goos }}
|
|
GOARCH: ${{ inputs.goarch }}
|
|
GO_LDFLAGS: ${{ inputs.ld-flags }}
|
|
ACTIONSOS: ${{ inputs.runson }}
|
|
CGO_ENABLED: ${{ inputs.cgo-enabled }}
|
|
uses: hashicorp/actions-go-build@b9e2cfba3013adccdc112b01cba922d83c78fac5 # v1.1.1
|
|
with:
|
|
product_name: ${{ inputs.package-name }}
|
|
product_version: ${{ inputs.product-version }}
|
|
go_version: ${{ inputs.go-version }}
|
|
os: ${{ inputs.goos }}
|
|
arch: ${{ inputs.goarch }}
|
|
reproducible: nope
|
|
instructions: |-
|
|
go build -ldflags "${{ inputs.ld-flags }}" -o "$BIN_PATH" -trimpath -buildvcs=false
|
|
cp LICENSE "$TARGET_DIR/LICENSE.txt"
|
|
- name: Copy license file to config_dir
|
|
if: ${{ inputs.goos == 'linux' }}
|
|
env:
|
|
LICENSE_DIR: ".release/linux/package/usr/share/doc/${{ inputs.package-name }}"
|
|
run: |
|
|
mkdir -p "$LICENSE_DIR" && cp LICENSE "$LICENSE_DIR/LICENSE.txt"
|
|
- if: ${{ inputs.goos == 'linux' }}
|
|
uses: hashicorp/actions-packaging-linux@129994a18b8e7dc106937edf859fddd97af66365 # v1.10
|
|
with:
|
|
name: "terraform"
|
|
description: "Terraform enables you to safely and predictably create, change, and improve infrastructure. It is a tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned."
|
|
arch: ${{ inputs.goarch }}
|
|
version: ${{ inputs.product-version }}
|
|
maintainer: "HashiCorp"
|
|
homepage: "https://terraform.io/"
|
|
license: "BUSL-1.1"
|
|
binary: "dist/terraform"
|
|
deb_depends: "git"
|
|
rpm_depends: "git"
|
|
config_dir: ".release/linux/package/"
|
|
- if: ${{ inputs.goos == 'linux' }}
|
|
name: Determine package file names
|
|
run: |
|
|
echo "RPM_PACKAGE=$(basename out/*.rpm)" >> $GITHUB_ENV
|
|
echo "DEB_PACKAGE=$(basename out/*.deb)" >> $GITHUB_ENV
|
|
- if: ${{ inputs.goos == 'linux' }}
|
|
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
|
|
with:
|
|
name: ${{ env.RPM_PACKAGE }}
|
|
path: out/${{ env.RPM_PACKAGE }}
|
|
if-no-files-found: error
|
|
- if: ${{ inputs.goos == 'linux' }}
|
|
uses: actions/upload-artifact@b7c566a772e6b6bfb58ed0dc250532a479d7789f # v6.0.0
|
|
with:
|
|
name: ${{ env.DEB_PACKAGE }}
|
|
path: out/${{ env.DEB_PACKAGE }}
|
|
if-no-files-found: error
|