16 Star 127 Fork 28

GVPmurphysecurity/murphysec

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
.gitlab-ci.yml 5.02 KB
一键复制 编辑 原始数据 按行查看 历史
iseki 提交于 2024-10-15 16:42 +08:00 . Squashed commit of the following:
stages: # List of stages for jobs, and their order of execution
- build
- after_build
- after_pack
- test
variables:
GOPROXY: https://goproxy.cn,direct
# GOPATH: "$CI_PROJECT_DIR/.go"
# GOBIN: "$CI_PROJECT_DIR/.go/bin"
CGO_ENABLED: '0'
# DENO_DIR: "$CI_PROJECT_DIR/.deno"
# GOCACHE: "$CI_PROJECT_DIR/.go-cache"
compose-build:
tags:
- client-build-shell
stage: build
artifacts:
expire_in: 1 day
paths:
- out/bin/*
- ci/push
before_script:
- mkdir -p .go-cache
- mkdir -p .go
rules:
- if: '$CI_COMMIT_TAG == null'
script:
- GOOS=windows GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o out/bin/murphysec-windows-amd64.exe .
- GOOS=windows GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o out/bin/murphysec-windows-arm64.exe .
- GOOS=linux GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o out/bin/murphysec-linux-amd64 .
- GOOS=linux GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o out/bin/murphysec-linux-arm64 .
- GOOS=darwin GOARCH=amd64 go build -v -ldflags "-s -w -buildid=" -trimpath -o out/bin/murphysec-darwin-amd64 .
- GOOS=darwin GOARCH=arm64 go build -v -ldflags "-s -w -buildid=" -trimpath -o out/bin/murphysec-darwin-arm64 .
- go build -v -ldflags "-s -w" -trimpath -o ci/push ./ci
compose-build-with-tag:
tags:
- client-build-shell
stage: build
artifacts:
expire_in: 1 day
paths:
- out/bin/*
- ci/push
before_script:
- mkdir -p .go-cache
- mkdir -p .go
rules:
- if: '$CI_COMMIT_TAG != null'
script:
- GOOS=windows GOARCH=amd64 go build -v -ldflags "-s -w -X github.com/murphysecurity/murphysec/infra/buildinfo.version=$CI_COMMIT_TAG -buildid=" -trimpath -o out/bin/murphysec-windows-amd64.exe .
- GOOS=windows GOARCH=arm64 go build -v -ldflags "-s -w -X github.com/murphysecurity/murphysec/infra/buildinfo.version=$CI_COMMIT_TAG -buildid=" -trimpath -o out/bin/murphysec-windows-arm64.exe .
- GOOS=linux GOARCH=amd64 go build -v -ldflags "-s -w -X github.com/murphysecurity/murphysec/infra/buildinfo.version=$CI_COMMIT_TAG -buildid=" -trimpath -o out/bin/murphysec-linux-amd64 .
- GOOS=linux GOARCH=arm64 go build -v -ldflags "-s -w -X github.com/murphysecurity/murphysec/infra/buildinfo.version=$CI_COMMIT_TAG -buildid=" -trimpath -o out/bin/murphysec-linux-arm64 .
- GOOS=darwin GOARCH=amd64 go build -v -ldflags "-s -w -X github.com/murphysecurity/murphysec/infra/buildinfo.version=$CI_COMMIT_TAG -buildid=" -trimpath -o out/bin/murphysec-darwin-amd64 .
- GOOS=darwin GOARCH=arm64 go build -v -ldflags "-s -w -X github.com/murphysecurity/murphysec/infra/buildinfo.version=$CI_COMMIT_TAG -buildid=" -trimpath -o out/bin/murphysec-darwin-arm64 .
- go build -v -ldflags "-s -w" -trimpath -o ci/push ./ci
pack:
tags:
- client-build-shell
stage: after_build
artifacts:
expire_in: 1 day
paths:
- out/zip/pro.zip
script:
- mkdir out/zip
- cd out/bin && (ls -1 | xargs -I {} sh -c "sha256sum {} | grep -Po '^\\w+' > {}.sha256") && cd ../..
- bash -c "cd out/bin/ && zip ../zip/pro.zip *"
internal-cos-upload:
image: iseki0/cos-uploader:v1.1.3
stage: after_pack
script:
- cos-uploader --local out/bin/murphysec-windows-amd64.exe --remote /client/$CI_BUILD_REF_NAME/murphysec-windows-amd64.exe
- cos-uploader --local out/bin/murphysec-windows-arm64.exe --remote /client/$CI_BUILD_REF_NAME/murphysec-windows-arm64.exe
- cos-uploader --local out/bin/murphysec-linux-amd64 --remote /client/$CI_BUILD_REF_NAME/murphysec-linux-amd64
- cos-uploader --local out/bin/murphysec-linux-arm64 --remote /client/$CI_BUILD_REF_NAME/murphysec-linux-arm64
- cos-uploader --local out/bin/murphysec-darwin-amd64 --remote /client/$CI_BUILD_REF_NAME/murphysec-darwin-amd64
- cos-uploader --local out/bin/murphysec-darwin-arm64 --remote /client/$CI_BUILD_REF_NAME/murphysec-darwin-arm64
- cos-uploader --local out/zip/pro.zip --remote /client/$CI_BUILD_REF_NAME/pro.zip
- cos-uploader --local out/bin/murphysec-windows-amd64.exe --remote /client/-/murphysec-windows-amd64.exe
- cos-uploader --local out/bin/murphysec-windows-arm64.exe --remote /client/-/murphysec-windows-arm64.exe
- cos-uploader --local out/bin/murphysec-linux-amd64 --remote /client/-/murphysec-linux-amd64
- cos-uploader --local out/bin/murphysec-linux-arm64 --remote /client/-/murphysec-linux-arm64
- cos-uploader --local out/bin/murphysec-darwin-amd64 --remote /client/-/murphysec-darwin-amd64
- cos-uploader --local out/bin/murphysec-darwin-arm64 --remote /client/-/murphysec-darwin-arm64
- cos-uploader --local out/zip/pro.zip --remote /client/-/pro.zip
lark-notify:
tags:
- client-build-shell
stage: after_pack
cache:
key: cli-deno-cache-1223
paths:
- .deno
script:
- chmod 755 ci/push && ci/push
test:
tags:
- client-build-shell
stage: test
dependencies: [ ]
script:
- gotestsum --junitfile report.xml --format testname
artifacts:
when: always
reports:
junit: report.xml
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/murphysecurity/murphysec.git
git@gitee.com:murphysecurity/murphysec.git
murphysecurity
murphysec
murphysec
v3

搜索帮助