Skip to content

Commit

Permalink
ci: skip LICENSE.txt copy for Ent releases
Browse files Browse the repository at this point in the history
Ensure we do not unintentionally copy CE LICENSE.txt to Ent release
artifacts.

Also rework Go Build jobs to avoid future sync conflicts by handling CE
and Ent builds simultaneously.
  • Loading branch information
zalimeni committed May 6, 2024
1 parent 86b0818 commit bd8b167
Show file tree
Hide file tree
Showing 2 changed files with 47 additions and 13 deletions.
34 changes: 34 additions & 0 deletions .github/scripts/copy-legal.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#!/bin/bash
# Copyright (c) HashiCorp, Inc.
# SPDX-License-Identifier: BUSL-1.1

set -euo pipefail

repository_name=${1}
target_dirs="${@:2}"

if [ -z "$repository_name" ] || [ -z "$target_dirs" ]; then
echo "Error: repository_name and at least one value for target_dirs must be non-empty strings."
exit 1
fi

function copy_file {
for dir in $target_dirs; do
mkdir -p $dir
target_path="$dir/${2}"
echo "-> Copying $1 to $target_path"
cp "${1}" $target_path
done
}

if [[ $repository_name == *"-enterprise" ]]; then
echo "Copying legal (Ent)"
echo "Downloading EULA.txt and TermsOfEvaluation.txt"
curl -so /tmp/EULA.txt https://eula.hashicorp.com/EULA.txt
curl -so /tmp/TermsOfEvaluation.txt https://eula.hashicorp.com/TermsOfEvaluation.txt
copy_file /tmp/EULA.txt EULA.txt
copy_file /tmp/TermsOfEvaluation.txt TermsOfEvaluation.txt
else
echo "Copying legal (CE)"
copy_file LICENSE LICENSE.txt
fi
26 changes: 13 additions & 13 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ on:
# Push events on the main branch
- main
- release/**
workflow_dispatch:

env:
PKG_NAME: consul
Expand Down Expand Up @@ -141,15 +142,10 @@ jobs:
arch: ${{ matrix.goarch }}
reproducible: report
instructions: |-
cp LICENSE $TARGET_DIR/LICENSE.txt
go build -ldflags="$GOLDFLAGS" -o "$BIN_PATH" -trimpath -buildvcs=false
- name: Copy license file
env:
LICENSE_DIR: ".release/linux/package/usr/share/doc/${{ env.PKG_NAME }}"
run: |
mkdir -p "$LICENSE_DIR"
cp LICENSE "$LICENSE_DIR/LICENSE.txt"
# Note that for non-linux builds, .release/linux/package... is a no-op,
# but files will always included in the zip root directory (TARGET_DIR) on all platforms.
./.github/scripts/copy-legal.sh "${{ github.repository }}" "$TARGET_DIR" ".release/linux/package/usr/share/doc/${{ env.PKG_NAME }}"
${{ matrix.env }} go build -ldflags="$GOLDFLAGS" -tags="${{ matrix.gotags }}" -o "$BIN_PATH" -trimpath -buildvcs=false
- name: Package
if: ${{ matrix.goos == 'linux' }}
Expand Down Expand Up @@ -240,8 +236,10 @@ jobs:
arch: ${{ matrix.goarch }}
reproducible: report
instructions: |-
cp LICENSE $TARGET_DIR/LICENSE.txt
go build -ldflags="$GOLDFLAGS" -o "$BIN_PATH" -trimpath -buildvcs=false
# Note that for non-linux builds, .release/linux/package... is a no-op,
# but files will always included in the zip root directory (TARGET_DIR) on all platforms.
./.github/scripts/copy-legal.sh "${{ github.repository }}" "$TARGET_DIR" ".release/linux/package/usr/share/doc/${{ env.PKG_NAME }}"
go build -ldflags="$GOLDFLAGS" -tags="${{ matrix.gotags }}" -o "$BIN_PATH" -trimpath -buildvcs=false
build-darwin:
needs:
Expand Down Expand Up @@ -291,8 +289,10 @@ jobs:
arch: ${{ matrix.goarch }}
reproducible: report
instructions: |-
cp LICENSE $TARGET_DIR/LICENSE.txt
go build -ldflags="$GOLDFLAGS" -tags netcgo -o "$BIN_PATH" -trimpath -buildvcs=false
# Note that for non-linux builds, .release/linux/package... is a no-op,
# but files will always included in the zip root directory (TARGET_DIR) on all platforms.
./.github/scripts/copy-legal.sh "${{ github.repository }}" "$TARGET_DIR" ".release/linux/package/usr/share/doc/${{ env.PKG_NAME }}"
go build -ldflags="$GOLDFLAGS" -tags="${{ matrix.gotags }}" -o "$BIN_PATH" -trimpath -buildvcs=false
build-docker:
name: Docker ${{ matrix.arch }} build
Expand Down

0 comments on commit bd8b167

Please sign in to comment.