Some checks failed
CI Workflow / Check GoReleaser config (pull_request) Successful in 17s
CI Workflow / Prepare GO cache (pull_request) Successful in 2m10s
CI Workflow / CI run build and linting (pull_request) Successful in 7m10s
CI Workflow / Code coverage report (pull_request) Successful in 4s
CI Workflow / CI run tests (pull_request) Failing after 9m13s
CI Workflow / Test readiness for publishing provider (pull_request) Successful in 16m53s
90 lines
2.5 KiB
YAML
90 lines
2.5 KiB
YAML
name: Build
|
|
description: "Build pipeline"
|
|
inputs:
|
|
go-version:
|
|
description: "Go version to install"
|
|
default: '1.25'
|
|
required: true
|
|
java-distribution:
|
|
description: "JAVA distribution to use (default: temurin)"
|
|
default: 'temurin'
|
|
java-version:
|
|
description: "JAVA version to use (default: 21)"
|
|
default: '21'
|
|
|
|
runs:
|
|
using: "composite"
|
|
steps:
|
|
- name: Install needed tools
|
|
shell: bash
|
|
run: |
|
|
set -e
|
|
apt-get -y -qq update
|
|
apt-get -y -qq install jq python3 python3-pip python-is-python3 s3cmd git make wget unzip bc
|
|
|
|
- name: Checkout
|
|
uses: actions/checkout@v6
|
|
|
|
- name: Install Go ${{ inputs.go-version }}
|
|
uses: actions/setup-go@v6
|
|
with:
|
|
# go-version: ${{ inputs.go-version }}
|
|
check-latest: true
|
|
go-version-file: 'go.mod'
|
|
|
|
- name: Determine GOMODCACHE
|
|
shell: bash
|
|
id: goenv
|
|
run: |
|
|
set -e
|
|
echo "::set-output name=gomodcache::$(go env GOMODCACHE)"
|
|
|
|
- name: Restore cached GO pkg
|
|
id: cache-gopkg
|
|
uses: actions/cache/restore@v5
|
|
with:
|
|
path: "${{ steps.goenv.outputs.gomodcache }}"
|
|
key: ${{ runner.os }}-gopkg
|
|
|
|
- name: Install go tools
|
|
if: steps.cache-gopkg.outputs.cache-hit != 'true'
|
|
shell: bash
|
|
run: |
|
|
set -e
|
|
go install golang.org/x/tools/cmd/goimports@latest
|
|
go install github.com/hashicorp/terraform-plugin-codegen-framework/cmd/tfplugingen-framework@latest
|
|
go install github.com/hashicorp/terraform-plugin-codegen-openapi/cmd/tfplugingen-openapi@latest
|
|
go install github.com/hashicorp/terraform-plugin-docs/cmd/tfplugindocs@latest
|
|
|
|
# - name: Run build pkg directory
|
|
# shell: bash
|
|
# run: |
|
|
# set -e
|
|
# go run generator/main.go build
|
|
|
|
- name: Get all go packages
|
|
if: steps.cache-gopkg.outputs.cache-hit != 'true'
|
|
shell: bash
|
|
run: |
|
|
set -e
|
|
go get ./...
|
|
|
|
- name: Save Cache
|
|
id: cache-gopkg-save
|
|
uses: actions/cache/save@v5
|
|
with:
|
|
path: |
|
|
${{ steps.goenv.outputs.gomodcache }}
|
|
key: ${{ runner.os }}-gopkg
|
|
|
|
- name: Setup JAVA ${{ inputs.java-distribution }} ${{ inputs.go-version }}
|
|
uses: actions/setup-java@v5
|
|
with:
|
|
distribution: ${{ inputs.java-distribution }} # See 'Supported distributions' for available options
|
|
java-version: ${{ inputs.java-version }}
|
|
|
|
- name: Run make to build app
|
|
shell: bash
|
|
run: |
|
|
set -e
|
|
make build
|