diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 66f2a7cff..1158abfdd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -100,6 +100,7 @@ jobs: CGO_ENABLED: 0 run: | mkdir dist out + cp LICENSE dist/LICENSE.txt go build -o dist/ -ldflags "-s -w -X $(go list -m)/version.GitCommit=$(git rev-parse --short HEAD)" . zip -r -j out/${{ env.PKG_NAME }}_${{ needs.get-product-version.outputs.product-version }}_${{ matrix.goos }}_${{ matrix.goarch }}.zip dist/ @@ -137,6 +138,7 @@ jobs: CGO_ENABLED: 0 run: | mkdir dist out + cp LICENSE dist/LICENSE.txt go build -o dist/ -ldflags "-s -w -X $(go list -m)/version.GitCommit=$(git rev-parse --short HEAD)" . zip -r -j out/${{ env.PKG_NAME }}_${{ needs.get-product-version.outputs.product-version }}_${{ matrix.goos }}_${{ matrix.goarch }}.zip dist/ @@ -145,6 +147,13 @@ jobs: name: ${{ env.PKG_NAME }}_${{ needs.get-product-version.outputs.product-version }}_${{ matrix.goos }}_${{ matrix.goarch }}.zip path: out/${{ env.PKG_NAME }}_${{ needs.get-product-version.outputs.product-version }}_${{ matrix.goos }}_${{ matrix.goarch }}.zip + - 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" + - name: Package if: ${{ matrix.goos == 'linux' }} uses: hashicorp/actions-packaging-linux@v1 @@ -159,6 +168,7 @@ jobs: binary: "dist/${{ env.PKG_NAME }}" deb_depends: "openssl" rpm_depends: "openssl" + config_dir: ".release/linux/package" - name: Set Package Names if: ${{ matrix.goos == 'linux' }} @@ -206,6 +216,7 @@ jobs: - name: Build run: | mkdir dist out + cp LICENSE dist/LICENSE.txt go build -tags netcgo -o dist/ zip -r -j out/${{ env.PKG_NAME }}_${{ needs.get-product-version.outputs.product-version }}_${{ matrix.goos }}_${{ matrix.goarch }}.zip dist/ diff --git a/Dockerfile b/Dockerfile index 1fb571213..a8e3bd792 100644 --- a/Dockerfile +++ b/Dockerfile @@ -16,11 +16,13 @@ ARG PRODUCT_REVISION ARG PRODUCT_NAME=$BIN_NAME # TARGETARCH and TARGETOS are set automatically when --platform is provided. ARG TARGETOS TARGETARCH +ENV PRODUCT_NAME=$BIN_NAME LABEL maintainer="Consul Team " # version label is required for build process LABEL version=$PRODUCT_VERSION LABEL revision=$PRODUCT_REVISION +LABEL licenses="MPL-2.0" # These are the defaults, this makes them explicit and overridable. ARG UID=100 @@ -31,6 +33,7 @@ RUN addgroup -g ${GID} ${BIN_NAME} \ # where the build system stores the builds COPY ./dist/$TARGETOS/$TARGETARCH/$BIN_NAME /bin/ +COPY LICENSE /usr/share/doc/$PRODUCT_NAME/LICENSE.txt # entrypoint COPY ./.release/docker-entrypoint.sh /bin/