From 34cddb1915b6289d94db64dcffd17138f56f1eaf Mon Sep 17 00:00:00 2001 From: "pokornyIt.cz" <8665714+pokornyIt@users.noreply.github.com> Date: Tue, 15 Dec 2020 00:57:10 +0100 Subject: [PATCH] Fix ARCH and OS (#8) * Fix ARCH and OS * Minimize test process --- .github/workflows/full-release.yml | 23 +++++---- .github/workflows/test.yml | 76 +++++++++++++++++++++++++----- 2 files changed, 79 insertions(+), 20 deletions(-) diff --git a/.github/workflows/full-release.yml b/.github/workflows/full-release.yml index 3ff47f7..92195b5 100644 --- a/.github/workflows/full-release.yml +++ b/.github/workflows/full-release.yml @@ -49,11 +49,10 @@ jobs: echo BUILD_TIME=$(date -u +"%Y%m%d-%H:%M:%S") >> $GITHUB_ENV echo BUILD_USER=$(echo ${GITHUB_ACTOR}@${HOSTNAME}) >> $GITHUB_ENV echo BUILD_ARTIFACTS_FOLDER=$(echo build-artifacts-$(date +%s)) >> $GITHUB_ENV - echo BINARY_NAME=$(echo basename ${GITHUB_REPOSITORY}) >> $GITHUB_ENV - echo GOOS=$(echo ${matrix.goos}) >> $GITHUB_ENV - echo GOARCH=$(echo ${matrix.goarch}) >> $GITHUB_ENV - echo RELEASE_ASSET_NAME=$(echo ${BINARY_NAME}-${APP_VERSION}-${GOOS}-${GOARCH}${BINARY_EXT}) >> $GITHUB_ENV - if [ ${GOOS} == 'windows']; then + echo BINARY_NAME=$(basename ${GITHUB_REPOSITORY}) >> $GITHUB_ENV + echo GOOS=$(echo ${{ matrix.goos }}) >> $GITHUB_ENV + echo GOARCH=$(echo ${{ matrix.goarch }}) >> $GITHUB_ENV + if [ ${GOOS} == 'windows' ]; then echo BINARY_EXT='.exe' >> $GITHUB_ENV echo RELEASE_ASSET_EXT='.zip' >> $GITHUB_ENV echo MEDIA_TYPE='application/zip' >> $GITHUB_ENV @@ -63,6 +62,9 @@ jobs: echo MEDIA_TYPE='application/gzip' >> $GITHUB_ENV fi + - name: Set asset name + run: echo RELEASE_ASSET_NAME=$(echo ${{ env.BINARY_NAME }}-${{ env.APP_VERSION }}-${{ env.GOOS }}-${{ env.GOARCH }}) >> $GITHUB_ENV + - name: Environment Printer uses: managedkaos/print-env@v1.0 @@ -72,21 +74,26 @@ jobs: cp -r LICENSE README.md config.yml ${{ env.BUILD_ARTIFACTS_FOLDER }}/ - name: Build - run: GOOS =${{ matrix.goos }} GOARCH=${{ matrix.goarch }} go build -v -o "${{ env.BUILD_ARTIFACTS_FOLDER }}/${{ env.BINARY_NAME }}${{ env.BINARY_EXT }}" -ldflags="-X 'main.Version=${{ env.APP_VERSION }}' -X 'main.BuildDate=${{ env.BUILD_TIME }}' -X 'main.Branch=${{ github.ref }}' -X 'main.Revision=${{ github.SHA }}' -X 'main.BuildUser=${{ env.BUILD_USER }}'" . + run: go build -v -o "${{ env.BUILD_ARTIFACTS_FOLDER }}/${{ env.BINARY_NAME }}${{ env.BINARY_EXT }}" -ldflags="-X 'main.Version=${{ env.APP_VERSION }}' -X 'main.BuildDate=${{ env.BUILD_TIME }}' -X 'main.Branch=${{ github.ref }}' -X 'main.Revision=${{ github.SHA }}' -X 'main.BuildUser=${{ env.BUILD_USER }}'" . - name: List files in directory run: ls -lha ${{ env.BUILD_ARTIFACTS_FOLDER }}/ - name: TAR/ZIP files run: | - cd ${{ env.BUILD_ARTIFACTS_FOLDER }}/ - if [ ${GOOS} == 'windows']; then + cd ${{ env.BUILD_ARTIFACTS_FOLDER }} + + if [ ${GOOS} == 'windows' ]; then zip -vr ${{ env.RELEASE_ASSET_NAME }}${{ env.RELEASE_ASSET_EXT }} * else tar cvfz ${{ env.RELEASE_ASSET_NAME }}${{ env.RELEASE_ASSET_EXT }} * fi id: create_tar + - name: List files in directory + run: | + ls -lha ${{ env.BUILD_ARTIFACTS_FOLDER }}/ + - name: Create Release id: create_release uses: actions/create-release@v1 diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 5b95041..b66387b 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -10,16 +10,28 @@ on: branches: [ master ] jobs: +# releases-matrix: +# name: Release Matrix +# runs-on: ubuntu-latest +# strategy: +# matrix: +# goos: [ linux ] +# goarch: [ amd64 ] +# exclude: +# # windows/arm64 seems useless +# - goarch: arm64 +# goos: windows build: name: Test-Build runs-on: ubuntu-latest + steps: - name: Set up Go 1.x uses: actions/setup-go@v2 with: - go-version: ^1.14 + go-version: ^1.15 id: go - name: Check out code into the Go module directory @@ -28,17 +40,31 @@ jobs: - name: Get dependencies run: | go get -v -t -d ./... - if [ -f Gopkg.toml ]; then - curl https://raw.githubusercontent.com/golang/dep/master/install.sh | sh - dep ensure - fi - - - name: Set APP_VERSION env - run: echo APP_VERSION=$(basename ${GITHUB_REF}) >> $GITHUB_ENV - - name: Set BUILD_TIME env - run: echo BUILD_TIME=$(date -u +"%Y%m%d-%H:%M:%S") >> $GITHUB_ENV - - name: Set BUILD_USER env - run: echo BUILD_USER=$(echo ${GITHUB_ACTOR}@${HOSTNAME}) >> $GITHUB_ENV + + - name: Setup environment + run: | + echo APP_VERSION=$(basename ${GITHUB_REF}) >> $GITHUB_ENV + echo BUILD_TIME=$(date -u +"%Y%m%d-%H:%M:%S") >> $GITHUB_ENV + echo BUILD_USER=$(echo ${GITHUB_ACTOR}@${HOSTNAME}) >> $GITHUB_ENV + +# - name: Setup environment II +# run: | +# echo BUILD_ARTIFACTS_FOLDER=$(echo build-artifacts-$(date +%s)) >> $GITHUB_ENV +# echo BINARY_NAME=$(basename ${GITHUB_REPOSITORY}) >> $GITHUB_ENV +# echo GOOS=$(echo ${{ matrix.goos }}) >> $GITHUB_ENV +# echo GOARCH=$(echo ${{ matrix.goarch }}) >> $GITHUB_ENV +# if [ ${GOOS} == 'windows' ]; then +# echo BINARY_EXT='.exe' >> $GITHUB_ENV +# echo RELEASE_ASSET_EXT='.zip' >> $GITHUB_ENV +# echo MEDIA_TYPE='application/zip' >> $GITHUB_ENV +# else +# echo BINARY_EXT='' >> $GITHUB_ENV +# echo RELEASE_ASSET_EXT='.tar.gz' >> $GITHUB_ENV +# echo MEDIA_TYPE='application/gzip' >> $GITHUB_ENV +# fi + +# - name: Set asset name +# run: echo RELEASE_ASSET_NAME=$(echo ${{ env.BINARY_NAME }}-${{ env.APP_VERSION }}-${{ env.GOOS }}-${{ env.GOARCH }}) >> $GITHUB_ENV - name: Environment Printer uses: managedkaos/print-env@v1.0 @@ -51,3 +77,29 @@ jobs: - name: Show Data run: ./cucm_performance_exporter --version + +# - name: Create directory +# run: | +# mkdir -p ${BUILD_ARTIFACTS_FOLDER} +# cp -r LICENSE README.md config.yml ${{ env.BUILD_ARTIFACTS_FOLDER }}/ +# +# - name: Build +# run: go build -v -o "${{ env.BUILD_ARTIFACTS_FOLDER }}/${{ env.BINARY_NAME }}${{ env.BINARY_EXT }}" -ldflags="-X 'main.Version=${{ env.APP_VERSION }}' -X 'main.BuildDate=${{ env.BUILD_TIME }}' -X 'main.Branch=${{ github.ref }}' -X 'main.Revision=${{ github.SHA }}' -X 'main.BuildUser=${{ env.BUILD_USER }}'" . +# +# - name: List files in directory +# run: ls -lha ${{ env.BUILD_ARTIFACTS_FOLDER }}/ +# +# - name: TAR/ZIP files +# run: | +# cd ${{ env.BUILD_ARTIFACTS_FOLDER }} +# +# if [ ${GOOS} == 'windows' ]; then +# zip -vr ${{ env.RELEASE_ASSET_NAME }}${{ env.RELEASE_ASSET_EXT }} * +# else +# tar cvfz ${{ env.RELEASE_ASSET_NAME }}${{ env.RELEASE_ASSET_EXT }} * +# fi +# id: create_tar +# +# - name: List files in directory +# run: | +# ls -lha ${{ env.BUILD_ARTIFACTS_FOLDER }}/