Merge pull request 'CI Improvements' (#142) from issue/color-eyre into master
Reviewed-on: #142
This commit is contained in:
commit
ff98a4a511
9 changed files with 61 additions and 33 deletions
|
@ -5,6 +5,7 @@ RUN set -eux; \
|
|||
apt-get install --no-install-recommends -y \
|
||||
build-essential \
|
||||
curl \
|
||||
git \
|
||||
gpg \
|
||||
jq \
|
||||
libatk1.0-dev \
|
||||
|
|
|
@ -40,4 +40,4 @@ jobs:
|
|||
pr: ((.:pr))
|
||||
gitea_api_key: ((gitea_api_key))
|
||||
instance_vars:
|
||||
n: ((.:pr.number))
|
||||
number: ((.:pr.number))
|
||||
|
|
|
@ -37,7 +37,6 @@ resources:
|
|||
url: http://forgejo:3000
|
||||
owner: bitsquid_dt
|
||||
repo: dtmt
|
||||
sha: ((pr.head.sha))
|
||||
context: lint/clippy
|
||||
description: Checking for common mistakes and opportunities for code improvement
|
||||
|
||||
|
@ -48,7 +47,6 @@ resources:
|
|||
url: http://forgejo:3000
|
||||
owner: bitsquid_dt
|
||||
repo: dtmt
|
||||
sha: ((pr.head.sha))
|
||||
context: build/msvc
|
||||
description: "Build for the target platform: msvc"
|
||||
|
||||
|
@ -59,7 +57,6 @@ resources:
|
|||
url: http://forgejo:3000
|
||||
owner: bitsquid_dt
|
||||
repo: dtmt
|
||||
sha: ((pr.head.sha))
|
||||
context: build/linux
|
||||
description: "Build for the target platform: linux"
|
||||
|
||||
|
@ -72,23 +69,29 @@ jobs:
|
|||
no_get: true
|
||||
params:
|
||||
state: success
|
||||
sha: ((.:git_sha))
|
||||
|
||||
on_failure:
|
||||
put: state-success
|
||||
put: state-failure
|
||||
resource: pr-status-lint-clippy
|
||||
no_get: true
|
||||
params:
|
||||
state: failure
|
||||
sha: ((.:git_sha))
|
||||
|
||||
plan:
|
||||
- get: repo
|
||||
trigger: true
|
||||
|
||||
- load_var: git_sha
|
||||
file: repo/.git/ref
|
||||
|
||||
- put: state-pending
|
||||
resource: pr-status-lint-clippy
|
||||
no_get: true
|
||||
params:
|
||||
state: pending
|
||||
|
||||
- get: repo
|
||||
trigger: true
|
||||
sha: ((.:git_sha))
|
||||
|
||||
- task: check
|
||||
file: repo/.ci/tasks/clippy.yml
|
||||
|
@ -103,23 +106,29 @@ jobs:
|
|||
no_get: true
|
||||
params:
|
||||
state: success
|
||||
sha: ((.:git_sha))
|
||||
|
||||
on_failure:
|
||||
put: state-success
|
||||
put: state-failure
|
||||
resource: pr-status-build-msvc
|
||||
no_get: true
|
||||
params:
|
||||
state: failure
|
||||
sha: ((.:git_sha))
|
||||
|
||||
plan:
|
||||
- get: repo
|
||||
trigger: true
|
||||
|
||||
- load_var: git_sha
|
||||
file: repo/.git/ref
|
||||
|
||||
- put: state-pending
|
||||
resource: pr-status-build-msvc
|
||||
no_get: true
|
||||
params:
|
||||
state: pending
|
||||
|
||||
- get: repo
|
||||
trigger: true
|
||||
sha: ((.:git_sha))
|
||||
|
||||
- task: build
|
||||
file: repo/.ci/tasks/build.yml
|
||||
|
@ -154,23 +163,29 @@ jobs:
|
|||
no_get: true
|
||||
params:
|
||||
state: success
|
||||
sha: ((.:git_sha))
|
||||
|
||||
on_failure:
|
||||
put: state-success
|
||||
put: state-failure
|
||||
resource: pr-status-build-linux
|
||||
no_get: true
|
||||
params:
|
||||
state: failure
|
||||
sha: ((.:git_sha))
|
||||
|
||||
plan:
|
||||
- get: repo
|
||||
trigger: true
|
||||
|
||||
- load_var: git_sha
|
||||
file: repo/.git/ref
|
||||
|
||||
- put: state-pending
|
||||
resource: pr-status-build-linux
|
||||
no_get: true
|
||||
params:
|
||||
state: pending
|
||||
|
||||
- get: repo
|
||||
trigger: true
|
||||
sha: ((.:git_sha))
|
||||
|
||||
- task: build
|
||||
file: repo/.ci/tasks/build.yml
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
#!/bin/sh
|
||||
#!/bin/bash
|
||||
|
||||
set -eu
|
||||
|
||||
|
@ -12,39 +12,42 @@ title() {
|
|||
printf "\033[1m%s\033[0m\n" "$1"
|
||||
}
|
||||
|
||||
cd "repo"
|
||||
|
||||
if [ -n "${PR:-}" ]; then
|
||||
title "PR: $(echo "$PR" | jq '.number') - $(echo "$PR" | jq '.title')"
|
||||
ref="pr-$(echo "$PR" | jq '.number')-$(git rev-parse --short HEAD 2>/dev/null || echo 'manual')"
|
||||
ref="pr-$(echo "$PR" | jq '.number')-$(git rev-parse --short "$(cat .git/ref || echo "HEAD")" 2>/dev/null || echo 'manual')"
|
||||
else
|
||||
ref=$(git describe --tags)
|
||||
fi
|
||||
|
||||
title "Version is '$ref'"
|
||||
title "Version: '$ref'"
|
||||
echo "$ref" > "$OUTPUT/version"
|
||||
|
||||
cd "repo"
|
||||
case "$TARGET" in
|
||||
msvc)
|
||||
cp /src/*.lib ./lib/oodle/
|
||||
|
||||
title "Build project for target $TARGET"
|
||||
title "Building project for target $TARGET"
|
||||
cargo build --color always --locked --release --target x86_64-pc-windows-msvc -Zbuild-std
|
||||
|
||||
title "Install artifacts"
|
||||
install -t "$OUTPUT/" target/x86_64-pc-windows-msvc/release/dtmt.exe
|
||||
install -t "$OUTPUT/" target/x86_64-pc-windows-msvc/release/dtmm.exe
|
||||
install -v -t "$OUTPUT/" target/x86_64-pc-windows-msvc/release/dtmt.exe
|
||||
install -v -t "$OUTPUT/" target/x86_64-pc-windows-msvc/release/dtmm.exe
|
||||
;;
|
||||
linux)
|
||||
cp /src/*.a ./lib/oodle/
|
||||
|
||||
title "Build project for target $TARGET"
|
||||
title "Building project for target $TARGET"
|
||||
cargo build --color always --locked --profile release-lto
|
||||
|
||||
title "Install artifacts"
|
||||
install -t "$OUTPUT/" target/release-lto/dtmt
|
||||
install -t "$OUTPUT/" target/release-lto/dtmm
|
||||
title "Installing artifacts"
|
||||
install -v -t "$OUTPUT/" target/release-lto/dtmt
|
||||
install -v -t "$OUTPUT/" target/release-lto/dtmm
|
||||
;;
|
||||
*)
|
||||
echo "Env var 'TARGET' must either be 'msvc' or 'linux'. Got '$TARGET'." >&2
|
||||
echo -e "\033[31;1mEnv var 'TARGET' must either be 'msvc' or 'linux'. Got '$TARGET'.\033[0m" >&2
|
||||
exit 1
|
||||
esac
|
||||
|
||||
title "Done"
|
||||
|
|
|
@ -1,7 +1,15 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -eux
|
||||
set -eu
|
||||
|
||||
title() {
|
||||
printf "\033[1m%s\033[0m\n" "$1"
|
||||
}
|
||||
|
||||
title "Install clippy"
|
||||
rustup component add clippy
|
||||
|
||||
title "Run clippy"
|
||||
cargo clippy --color always --no-deps
|
||||
|
||||
title "Done"
|
||||
|
|
1
.gitmodules
vendored
1
.gitmodules
vendored
|
@ -7,6 +7,7 @@
|
|||
[submodule "lib/color-eyre"]
|
||||
path = lib/color-eyre
|
||||
url = https://github.com/sclu1034/color-eyre.git
|
||||
branch = "fork"
|
||||
[submodule "lib/ansi-parser"]
|
||||
path = lib/ansi-parser
|
||||
url = https://gitlab.com/lschwiderski/ansi-parser.git
|
||||
|
|
4
Justfile
4
Justfile
|
@ -29,7 +29,7 @@ ci-image-linux:
|
|||
docker push registry.sclu1034.dev/dtmt-ci-base-linux
|
||||
|
||||
set-base-pipeline:
|
||||
fly -t ((fly_target)) set-pipeline \
|
||||
fly -t {{fly_target}} set-pipeline \
|
||||
--pipeline dtmt-prs \
|
||||
--config .ci/pipelines/base-pipeline.yml \
|
||||
-v gitea_api_key=${GITEA_API_KEY} \
|
||||
|
@ -46,7 +46,7 @@ set-pr-pipeline pr:
|
|||
--pipeline dtmt-pr \
|
||||
--config .ci/pipelines/pr.yml \
|
||||
-v gitea_api_key=${GITEA_API_KEY} \
|
||||
-i n={{pr}} \
|
||||
-i number={{pr}} \
|
||||
-y branch="$(yq -y '.head.ref' 'pr-{{pr}}.yaml')" \
|
||||
-y pr="$(cat 'pr-{{pr}}.yaml')"
|
||||
|
||||
|
|
|
@ -1 +1 @@
|
|||
Subproject commit 55f8c6b7481d462e50ee4a03a43253d80d648ae2
|
||||
Subproject commit 0fa05eba9954be223b06468c8760b97e660f9941
|
|
@ -1 +1 @@
|
|||
Subproject commit 24da35e631099e914d6fc1bcc863228c48e540ec
|
||||
Subproject commit 19120166f9fc7838b98c71fc348791abc820e323
|
Loading…
Add table
Reference in a new issue