build script supports setting the build time and date through environment variables
This commit is contained in:
@@ -30,7 +30,10 @@ jobs:
|
|||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- name: Set up the environment
|
- name: Set up the environment
|
||||||
|
id: setup
|
||||||
run: |
|
run: |
|
||||||
|
echo "build_unix_time=$(date '+%s')" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "build_date=$(date '+%Y%m%d')" >> "$GITHUB_OUTPUT"
|
||||||
sed -r -i 's#FROM( --.*)? (.*:.*)?#FROM\1 ${{ secrets.DOCKER_REPO }}/mirrors/\2#g' Dockerfile
|
sed -r -i 's#FROM( --.*)? (.*:.*)?#FROM\1 ${{ secrets.DOCKER_REPO }}/mirrors/\2#g' Dockerfile
|
||||||
cat >> docker/custom-backend-pre-setup.sh <<EOF
|
cat >> docker/custom-backend-pre-setup.sh <<EOF
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
@@ -53,6 +56,8 @@ jobs:
|
|||||||
build-args: |
|
build-args: |
|
||||||
RELEASE_BUILD=1
|
RELEASE_BUILD=1
|
||||||
BUILD_PIPELINE=1
|
BUILD_PIPELINE=1
|
||||||
|
BUILD_UNIXTIME=${{ steps.setup.outputs.build_unix_time }}
|
||||||
|
BUILD_DATE=${{ steps.setup.outputs.build_date }}
|
||||||
CHECK_3RD_API=${{ vars.CHECK_3RD_API }}
|
CHECK_3RD_API=${{ vars.CHECK_3RD_API }}
|
||||||
SKIP_TESTS=${{ vars.SKIP_TESTS }}
|
SKIP_TESTS=${{ vars.SKIP_TESTS }}
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
|
|||||||
@@ -30,7 +30,10 @@ jobs:
|
|||||||
uses: docker/setup-buildx-action@v3
|
uses: docker/setup-buildx-action@v3
|
||||||
|
|
||||||
- name: Set up the environment
|
- name: Set up the environment
|
||||||
|
id: setup
|
||||||
run: |
|
run: |
|
||||||
|
echo "build_unix_time=$(date '+%s')" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "build_date=$(date '+%Y%m%d')" >> "$GITHUB_OUTPUT"
|
||||||
sed -r -i 's#FROM( --.*)? (.*:.*)?#FROM\1 ${{ secrets.DOCKER_REPO }}/mirrors/\2#g' Dockerfile
|
sed -r -i 's#FROM( --.*)? (.*:.*)?#FROM\1 ${{ secrets.DOCKER_REPO }}/mirrors/\2#g' Dockerfile
|
||||||
cat >> docker/custom-backend-pre-setup.sh <<EOF
|
cat >> docker/custom-backend-pre-setup.sh <<EOF
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
@@ -52,6 +55,8 @@ jobs:
|
|||||||
push: true
|
push: true
|
||||||
build-args: |
|
build-args: |
|
||||||
BUILD_PIPELINE=1
|
BUILD_PIPELINE=1
|
||||||
|
BUILD_UNIXTIME=${{ steps.setup.outputs.build_unix_time }}
|
||||||
|
BUILD_DATE=${{ steps.setup.outputs.build_date }}
|
||||||
CHECK_3RD_API=${{ vars.CHECK_3RD_API }}
|
CHECK_3RD_API=${{ vars.CHECK_3RD_API }}
|
||||||
SKIP_TESTS=${{ vars.SKIP_TESTS }}
|
SKIP_TESTS=${{ vars.SKIP_TESTS }}
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
|
|||||||
@@ -4,6 +4,12 @@ inputs:
|
|||||||
release-build:
|
release-build:
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
|
build-unix-time:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
build-date:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
check-3rd-api:
|
check-3rd-api:
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
@@ -83,6 +89,8 @@ runs:
|
|||||||
*.platform=${{ inputs.platform }}
|
*.platform=${{ inputs.platform }}
|
||||||
*.args.RELEASE_BUILD=${{ inputs.release-build }}
|
*.args.RELEASE_BUILD=${{ inputs.release-build }}
|
||||||
*.args.BUILD_PIPELINE=1
|
*.args.BUILD_PIPELINE=1
|
||||||
|
*.args.BUILD_UNIXTIME=${{ inputs.build-unix-time }}
|
||||||
|
*.args.BUILD_DATE=${{ inputs.build-date }}
|
||||||
*.args.CHECK_3RD_API=${{ inputs.check-3rd-api }}
|
*.args.CHECK_3RD_API=${{ inputs.check-3rd-api }}
|
||||||
*.args.SKIP_TESTS=${{ inputs.skip-tests }}
|
*.args.SKIP_TESTS=${{ inputs.skip-tests }}
|
||||||
*.output=type=image,push-by-digest=true,name-canonical=true,push=${{ inputs.docker-push }}
|
*.output=type=image,push-by-digest=true,name-canonical=true,push=${{ inputs.docker-push }}
|
||||||
|
|||||||
@@ -13,6 +13,12 @@ inputs:
|
|||||||
release-build:
|
release-build:
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
|
build-unix-time:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
|
build-date:
|
||||||
|
required: false
|
||||||
|
type: string
|
||||||
check-3rd-api:
|
check-3rd-api:
|
||||||
required: false
|
required: false
|
||||||
type: string
|
type: string
|
||||||
@@ -55,6 +61,8 @@ runs:
|
|||||||
env:
|
env:
|
||||||
RELEASE_BUILD: "${{ inputs.release-build }}"
|
RELEASE_BUILD: "${{ inputs.release-build }}"
|
||||||
BUILD_PIPELINE: "1"
|
BUILD_PIPELINE: "1"
|
||||||
|
BUILD_UNIXTIME: "${{ inputs.build-unix-time }}"
|
||||||
|
BUILD_DATE: "${{ inputs.build-date }}"
|
||||||
CHECK_3RD_API: "${{ inputs.check-3rd-api }}"
|
CHECK_3RD_API: "${{ inputs.check-3rd-api }}"
|
||||||
SKIP_TESTS: "${{ inputs.skip-tests }}"
|
SKIP_TESTS: "${{ inputs.skip-tests }}"
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
10
.github/workflows/build-non-main-branch.yml
vendored
10
.github/workflows/build-non-main-branch.yml
vendored
@@ -9,6 +9,8 @@ jobs:
|
|||||||
setup:
|
setup:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
outputs:
|
outputs:
|
||||||
|
build-unix-time: ${{ steps.variable.outputs.build_unix_time }}
|
||||||
|
build-date: ${{ steps.variable.outputs.build_date }}
|
||||||
docker-tags: ${{ steps.meta.outputs.tags }}
|
docker-tags: ${{ steps.meta.outputs.tags }}
|
||||||
docker-labels: ${{ steps.meta.outputs.labels }}
|
docker-labels: ${{ steps.meta.outputs.labels }}
|
||||||
ezbookkeeping-docker-bake-meta-file-path: ${{ steps.variable.outputs.ezbookkeeping_docker_bake_meta_file_path }}
|
ezbookkeeping-docker-bake-meta-file-path: ${{ steps.variable.outputs.ezbookkeeping_docker_bake_meta_file_path }}
|
||||||
@@ -34,6 +36,8 @@ jobs:
|
|||||||
- name: Set up variables
|
- name: Set up variables
|
||||||
id: variable
|
id: variable
|
||||||
run: |
|
run: |
|
||||||
|
echo "build_unix_time=$(date '+%s')" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "build_date=$(date '+%Y%m%d')" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_bake_meta_file_path=${{ runner.temp }}/bake-meta.json" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_bake_meta_file_path=${{ runner.temp }}/bake-meta.json" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_bake_meta_artifact_name=ezbookkeeping-build-dev-docker-bake-meta-${{ github.run_id }}" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_bake_meta_artifact_name=ezbookkeeping-build-dev-docker-bake-meta-${{ github.run_id }}" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_digests_file_path=${{ runner.temp }}/digests" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_digests_file_path=${{ runner.temp }}/digests" >> "$GITHUB_OUTPUT"
|
||||||
@@ -63,6 +67,8 @@ jobs:
|
|||||||
|
|
||||||
- uses: ./.github/actions/build-linux-docker-and-package
|
- uses: ./.github/actions/build-linux-docker-and-package
|
||||||
with:
|
with:
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
platform: linux/amd64
|
platform: linux/amd64
|
||||||
@@ -95,6 +101,8 @@ jobs:
|
|||||||
|
|
||||||
- uses: ./.github/actions/build-linux-docker-and-package
|
- uses: ./.github/actions/build-linux-docker-and-package
|
||||||
with:
|
with:
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
platform: ${{ matrix.platform }}
|
platform: ${{ matrix.platform }}
|
||||||
@@ -118,6 +126,8 @@ jobs:
|
|||||||
|
|
||||||
- uses: ./.github/actions/build-windows-backend
|
- uses: ./.github/actions/build-windows-backend
|
||||||
with:
|
with:
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
backend-artifact-name-prefix: ${{ needs.setup.outputs.ezbookkeeping-backend-artifact-name-prefix }}
|
backend-artifact-name-prefix: ${{ needs.setup.outputs.ezbookkeeping-backend-artifact-name-prefix }}
|
||||||
|
|||||||
10
.github/workflows/build-release.yml
vendored
10
.github/workflows/build-release.yml
vendored
@@ -9,6 +9,8 @@ jobs:
|
|||||||
setup:
|
setup:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
outputs:
|
outputs:
|
||||||
|
build-unix-time: ${{ steps.variable.outputs.build_unix_time }}
|
||||||
|
build-date: ${{ steps.variable.outputs.build_date }}
|
||||||
docker-version: ${{ steps.meta.outputs.version }}
|
docker-version: ${{ steps.meta.outputs.version }}
|
||||||
docker-tags: ${{ steps.meta.outputs.tags }}
|
docker-tags: ${{ steps.meta.outputs.tags }}
|
||||||
docker-labels: ${{ steps.meta.outputs.labels }}
|
docker-labels: ${{ steps.meta.outputs.labels }}
|
||||||
@@ -37,6 +39,8 @@ jobs:
|
|||||||
- name: Set up variables
|
- name: Set up variables
|
||||||
id: variable
|
id: variable
|
||||||
run: |
|
run: |
|
||||||
|
echo "build_unix_time=$(date '+%s')" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "build_date=$(date '+%Y%m%d')" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_bake_meta_file_path=${{ runner.temp }}/bake-meta.json" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_bake_meta_file_path=${{ runner.temp }}/bake-meta.json" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_bake_meta_artifact_name=ezbookkeeping-build-release-docker-bake-meta-${{ github.run_id }}" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_bake_meta_artifact_name=ezbookkeeping-build-release-docker-bake-meta-${{ github.run_id }}" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_digests_file_path=${{ runner.temp }}/digests" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_digests_file_path=${{ runner.temp }}/digests" >> "$GITHUB_OUTPUT"
|
||||||
@@ -67,6 +71,8 @@ jobs:
|
|||||||
- uses: ./.github/actions/build-linux-docker-and-package
|
- uses: ./.github/actions/build-linux-docker-and-package
|
||||||
with:
|
with:
|
||||||
release-build: 1
|
release-build: 1
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
platform: linux/amd64
|
platform: linux/amd64
|
||||||
@@ -102,6 +108,8 @@ jobs:
|
|||||||
- uses: ./.github/actions/build-linux-docker-and-package
|
- uses: ./.github/actions/build-linux-docker-and-package
|
||||||
with:
|
with:
|
||||||
release-build: 1
|
release-build: 1
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
platform: ${{ matrix.platform }}
|
platform: ${{ matrix.platform }}
|
||||||
@@ -149,6 +157,8 @@ jobs:
|
|||||||
- uses: ./.github/actions/build-windows-backend
|
- uses: ./.github/actions/build-windows-backend
|
||||||
with:
|
with:
|
||||||
release-build: 1
|
release-build: 1
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
backend-artifact-name-prefix: ${{ needs.setup.outputs.ezbookkeeping-backend-artifact-name-prefix }}
|
backend-artifact-name-prefix: ${{ needs.setup.outputs.ezbookkeeping-backend-artifact-name-prefix }}
|
||||||
|
|||||||
10
.github/workflows/build-snapshot.yml
vendored
10
.github/workflows/build-snapshot.yml
vendored
@@ -9,6 +9,8 @@ jobs:
|
|||||||
setup:
|
setup:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
outputs:
|
outputs:
|
||||||
|
build-unix-time: ${{ steps.variable.outputs.build_unix_time }}
|
||||||
|
build-date: ${{ steps.variable.outputs.build_date }}
|
||||||
docker-version: ${{ steps.meta.outputs.version }}
|
docker-version: ${{ steps.meta.outputs.version }}
|
||||||
docker-tags: ${{ steps.meta.outputs.tags }}
|
docker-tags: ${{ steps.meta.outputs.tags }}
|
||||||
docker-labels: ${{ steps.meta.outputs.labels }}
|
docker-labels: ${{ steps.meta.outputs.labels }}
|
||||||
@@ -37,6 +39,8 @@ jobs:
|
|||||||
- name: Set up variables
|
- name: Set up variables
|
||||||
id: variable
|
id: variable
|
||||||
run: |
|
run: |
|
||||||
|
echo "build_unix_time=$(date '+%s')" >> "$GITHUB_OUTPUT"
|
||||||
|
echo "build_date=$(date '+%Y%m%d')" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_bake_meta_file_path=${{ runner.temp }}/bake-meta.json" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_bake_meta_file_path=${{ runner.temp }}/bake-meta.json" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_bake_meta_artifact_name=ezbookkeeping-build-dev-docker-bake-meta-${{ github.run_id }}" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_bake_meta_artifact_name=ezbookkeeping-build-dev-docker-bake-meta-${{ github.run_id }}" >> "$GITHUB_OUTPUT"
|
||||||
echo "ezbookkeeping_docker_digests_file_path=${{ runner.temp }}/digests" >> "$GITHUB_OUTPUT"
|
echo "ezbookkeeping_docker_digests_file_path=${{ runner.temp }}/digests" >> "$GITHUB_OUTPUT"
|
||||||
@@ -66,6 +70,8 @@ jobs:
|
|||||||
|
|
||||||
- uses: ./.github/actions/build-linux-docker-and-package
|
- uses: ./.github/actions/build-linux-docker-and-package
|
||||||
with:
|
with:
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
platform: linux/amd64
|
platform: linux/amd64
|
||||||
@@ -100,6 +106,8 @@ jobs:
|
|||||||
|
|
||||||
- uses: ./.github/actions/build-linux-docker-and-package
|
- uses: ./.github/actions/build-linux-docker-and-package
|
||||||
with:
|
with:
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
platform: ${{ matrix.platform }}
|
platform: ${{ matrix.platform }}
|
||||||
@@ -146,6 +154,8 @@ jobs:
|
|||||||
|
|
||||||
- uses: ./.github/actions/build-windows-backend
|
- uses: ./.github/actions/build-windows-backend
|
||||||
with:
|
with:
|
||||||
|
build-unix-time: ${{ needs.setup.outputs.build-unix-time }}
|
||||||
|
build-date: ${{ needs.setup.outputs.build-date }}
|
||||||
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
check-3rd-api: ${{ vars.CHECK_3RD_API }}
|
||||||
skip-tests: ${{ vars.SKIP_TESTS }}
|
skip-tests: ${{ vars.SKIP_TESTS }}
|
||||||
backend-artifact-name-prefix: ${{ needs.setup.outputs.ezbookkeeping-backend-artifact-name-prefix }}
|
backend-artifact-name-prefix: ${{ needs.setup.outputs.ezbookkeeping-backend-artifact-name-prefix }}
|
||||||
|
|||||||
@@ -2,10 +2,14 @@
|
|||||||
FROM golang:1.25.3-alpine3.22 AS be-builder
|
FROM golang:1.25.3-alpine3.22 AS be-builder
|
||||||
ARG RELEASE_BUILD
|
ARG RELEASE_BUILD
|
||||||
ARG BUILD_PIPELINE
|
ARG BUILD_PIPELINE
|
||||||
|
ARG BUILD_UNIXTIME
|
||||||
|
ARG BUILD_DATE
|
||||||
ARG CHECK_3RD_API
|
ARG CHECK_3RD_API
|
||||||
ARG SKIP_TESTS
|
ARG SKIP_TESTS
|
||||||
ENV RELEASE_BUILD=$RELEASE_BUILD
|
ENV RELEASE_BUILD=$RELEASE_BUILD
|
||||||
ENV BUILD_PIPELINE=$BUILD_PIPELINE
|
ENV BUILD_PIPELINE=$BUILD_PIPELINE
|
||||||
|
ENV BUILD_UNIXTIME=$BUILD_UNIXTIME
|
||||||
|
ENV BUILD_DATE=$BUILD_DATE
|
||||||
ENV CHECK_3RD_API=$CHECK_3RD_API
|
ENV CHECK_3RD_API=$CHECK_3RD_API
|
||||||
ENV SKIP_TESTS=$SKIP_TESTS
|
ENV SKIP_TESTS=$SKIP_TESTS
|
||||||
WORKDIR /go/src/github.com/mayswind/ezbookkeeping
|
WORKDIR /go/src/github.com/mayswind/ezbookkeeping
|
||||||
@@ -18,8 +22,12 @@ RUN ./build.sh backend
|
|||||||
FROM --platform=$BUILDPLATFORM node:24.10.0-alpine3.22 AS fe-builder
|
FROM --platform=$BUILDPLATFORM node:24.10.0-alpine3.22 AS fe-builder
|
||||||
ARG RELEASE_BUILD
|
ARG RELEASE_BUILD
|
||||||
ARG BUILD_PIPELINE
|
ARG BUILD_PIPELINE
|
||||||
|
ARG BUILD_UNIXTIME
|
||||||
|
ARG BUILD_DATE
|
||||||
ENV RELEASE_BUILD=$RELEASE_BUILD
|
ENV RELEASE_BUILD=$RELEASE_BUILD
|
||||||
ENV BUILD_PIPELINE=$BUILD_PIPELINE
|
ENV BUILD_PIPELINE=$BUILD_PIPELINE
|
||||||
|
ENV BUILD_UNIXTIME=$BUILD_UNIXTIME
|
||||||
|
ENV BUILD_DATE=$BUILD_DATE
|
||||||
WORKDIR /go/src/github.com/mayswind/ezbookkeeping
|
WORKDIR /go/src/github.com/mayswind/ezbookkeeping
|
||||||
COPY . .
|
COPY . .
|
||||||
RUN docker/frontend-build-pre-setup.sh
|
RUN docker/frontend-build-pre-setup.sh
|
||||||
|
|||||||
14
build.bat
14
build.bat
@@ -8,8 +8,8 @@ set "RELEASE=%RELEASE_BUILD%"
|
|||||||
set "RELEASE_TYPE=unknown"
|
set "RELEASE_TYPE=unknown"
|
||||||
set "VERSION="
|
set "VERSION="
|
||||||
set "COMMIT_HASH="
|
set "COMMIT_HASH="
|
||||||
set "BUILD_UNIXTIME="
|
set "BUILD_UNIXTIME=%BUILD_UNIXTIME%"
|
||||||
set "BUILD_DATE="
|
set "BUILD_DATE=%BUILD_DATE%"
|
||||||
set "PACKAGE_FILENAME="
|
set "PACKAGE_FILENAME="
|
||||||
for /f %%a in ('"prompt $E$S & echo on & for %%b in (1) do rem"') do set "ESC=%%a"
|
for /f %%a in ('"prompt $E$S & echo on & for %%b in (1) do rem"') do set "ESC=%%a"
|
||||||
|
|
||||||
@@ -113,8 +113,14 @@ goto :pre_parse_args
|
|||||||
set VERSION=%VERSION:,=%
|
set VERSION=%VERSION:,=%
|
||||||
set VERSION=%VERSION:"=%
|
set VERSION=%VERSION:"=%
|
||||||
for /f %%x in ('git rev-parse --short^=7 HEAD') do set "COMMIT_HASH=%%x"
|
for /f %%x in ('git rev-parse --short^=7 HEAD') do set "COMMIT_HASH=%%x"
|
||||||
call :set_unixtime BUILD_UNIXTIME
|
|
||||||
call :set_date BUILD_DATE
|
if "%BUILD_UNIXTIME%"=="" (
|
||||||
|
call :set_unixtime BUILD_UNIXTIME
|
||||||
|
)
|
||||||
|
|
||||||
|
if "%BUILD_DATE%"=="" (
|
||||||
|
call :set_date BUILD_DATE
|
||||||
|
)
|
||||||
|
|
||||||
:main
|
:main
|
||||||
if "%TYPE%"=="backend" call :build_backend & goto :end
|
if "%TYPE%"=="backend" call :build_backend & goto :end
|
||||||
|
|||||||
14
build.ps1
14
build.ps1
@@ -11,8 +11,8 @@ $script:SkipTests = $env:SKIP_TESTS
|
|||||||
$script:ReleaseType = "unknown"
|
$script:ReleaseType = "unknown"
|
||||||
$script:Version = ""
|
$script:Version = ""
|
||||||
$script:CommitHash = ""
|
$script:CommitHash = ""
|
||||||
$script:BuildUnixTime = ""
|
$script:BuildUnixTime = $env:BUILD_UNIXTIME
|
||||||
$script:BuildDate = ""
|
$script:BuildDate = $env:BUILD_DATE
|
||||||
|
|
||||||
function Write-Red($msg) {
|
function Write-Red($msg) {
|
||||||
Write-Host $msg -ForegroundColor Red
|
Write-Host $msg -ForegroundColor Red
|
||||||
@@ -79,8 +79,14 @@ function Check-Type-Dependencies {
|
|||||||
function Set-Build-Parameters {
|
function Set-Build-Parameters {
|
||||||
$script:Version = (Get-Content package.json | ConvertFrom-Json).version
|
$script:Version = (Get-Content package.json | ConvertFrom-Json).version
|
||||||
$script:CommitHash = git rev-parse --short=7 HEAD
|
$script:CommitHash = git rev-parse --short=7 HEAD
|
||||||
$script:BuildUnixTime = [int][double]::Parse((Get-Date -UFormat %s))
|
|
||||||
$script:BuildDate = Get-Date -Format "yyyyMMdd"
|
if (-not $BuildUnixTime) {
|
||||||
|
$script:BuildUnixTime = [int][double]::Parse((Get-Date -UFormat %s))
|
||||||
|
}
|
||||||
|
|
||||||
|
if (-not $BuildDate) {
|
||||||
|
$script:BuildDate = Get-Date -Format "yyyyMMdd"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function Build-Backend {
|
function Build-Backend {
|
||||||
|
|||||||
16
build.sh
16
build.sh
@@ -8,7 +8,8 @@ RELEASE=${RELEASE_BUILD:-"0"}
|
|||||||
RELEASE_TYPE="unknown"
|
RELEASE_TYPE="unknown"
|
||||||
VERSION=""
|
VERSION=""
|
||||||
COMMIT_HASH=""
|
COMMIT_HASH=""
|
||||||
BUILD_UNIXTIME=""
|
BUILD_UNIXTIME="${BUILD_UNIXTIME}"
|
||||||
|
BUILD_DATE="${BUILD_DATE}"
|
||||||
PACKAGE_FILENAME=""
|
PACKAGE_FILENAME=""
|
||||||
DOCKER_TAG=""
|
DOCKER_TAG=""
|
||||||
|
|
||||||
@@ -118,7 +119,14 @@ check_type_dependencies() {
|
|||||||
set_build_parameters() {
|
set_build_parameters() {
|
||||||
VERSION="$(grep '"version": ' package.json | awk -F ':' '{print $2}' | tr -d ' ' | tr -d ',' | tr -d '"')"
|
VERSION="$(grep '"version": ' package.json | awk -F ':' '{print $2}' | tr -d ' ' | tr -d ',' | tr -d '"')"
|
||||||
COMMIT_HASH="$(git rev-parse --short=7 HEAD)"
|
COMMIT_HASH="$(git rev-parse --short=7 HEAD)"
|
||||||
BUILD_UNIXTIME="$(date '+%s')"
|
|
||||||
|
if [ -z "$BUILD_UNIXTIME" ]; then
|
||||||
|
BUILD_UNIXTIME="$(date '+%s')"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -z "$BUILD_DATE" ]; then
|
||||||
|
BUILD_DATE="$(date '+%Y%m%d')"
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
build_backend() {
|
build_backend() {
|
||||||
@@ -203,7 +211,7 @@ build_package() {
|
|||||||
package_file_name="$VERSION";
|
package_file_name="$VERSION";
|
||||||
|
|
||||||
if [ "$RELEASE" = "0" ]; then
|
if [ "$RELEASE" = "0" ]; then
|
||||||
package_file_name="$package_file_name-$(date '+%Y%m%d')"
|
package_file_name="$package_file_name-$BUILD_DATE"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
package_file_name="ezbookkeeping-$package_file_name-$(arch).tar.gz"
|
package_file_name="ezbookkeeping-$package_file_name-$(arch).tar.gz"
|
||||||
@@ -237,7 +245,7 @@ build_docker() {
|
|||||||
docker_tag="$VERSION"
|
docker_tag="$VERSION"
|
||||||
|
|
||||||
if [ "$RELEASE" = "0" ]; then
|
if [ "$RELEASE" = "0" ]; then
|
||||||
docker_tag="SNAPSHOT-$(date '+%Y%m%d')";
|
docker_tag="SNAPSHOT-$BUILD_DATE";
|
||||||
fi
|
fi
|
||||||
|
|
||||||
docker_tag="ezbookkeeping:$docker_tag"
|
docker_tag="ezbookkeeping:$docker_tag"
|
||||||
|
|||||||
Reference in New Issue
Block a user