mirror of
https://github.com/google/sandboxed-api.git
synced 2024-03-22 13:11:30 +08:00
GitHub Actions: Add workflow to auto-create a pre-release on push
This also uploads the clang tool based header generator as an asset. PiperOrigin-RevId: 538781230 Change-Id: I50d0e22af1f3bab1e461ae2dd2b64a3e479ce7d1
This commit is contained in:
parent
67d5f1b23f
commit
4034fd6240
|
@ -28,15 +28,13 @@ jobs:
|
||||||
libc6-dev \
|
libc6-dev \
|
||||||
lsb-release \
|
lsb-release \
|
||||||
make \
|
make \
|
||||||
|
ninja-build \
|
||||||
software-properties-common \
|
software-properties-common \
|
||||||
wget
|
wget
|
||||||
wget https://apt.llvm.org/llvm.sh
|
wget https://apt.llvm.org/llvm.sh
|
||||||
chmod +x llvm.sh
|
chmod +x llvm.sh
|
||||||
./llvm.sh 16 all
|
./llvm.sh 16 all
|
||||||
|
|
||||||
- name: Install ninja-build tool
|
|
||||||
uses: seanmiddleditch/gha-setup-ninja@v3
|
|
||||||
|
|
||||||
- name: Configure CMake
|
- name: Configure CMake
|
||||||
run: |
|
run: |
|
||||||
mkdir -p "$GITHUB_WORKSPACE/build"
|
mkdir -p "$GITHUB_WORKSPACE/build"
|
||||||
|
@ -65,3 +63,4 @@ jobs:
|
||||||
with:
|
with:
|
||||||
name: sapi_generator_tool-linux
|
name: sapi_generator_tool-linux
|
||||||
path: ${{github.workspace}}/build/sapi_generator_tool-linux-x86_64
|
path: ${{github.workspace}}/build/sapi_generator_tool-linux-x86_64
|
||||||
|
|
||||||
|
|
60
.github/workflows/generate-pre-release.yml
vendored
Normal file
60
.github/workflows/generate-pre-release.yml
vendored
Normal file
|
@ -0,0 +1,60 @@
|
||||||
|
name: generate-pre-release
|
||||||
|
on:
|
||||||
|
workflow_run:
|
||||||
|
workflows: [debian-sapi-generator-tool]
|
||||||
|
types: [completed]
|
||||||
|
branches: [main]
|
||||||
|
jobs:
|
||||||
|
prerelease:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
ARTIFACT_NAME: sapi_generator_tool-linux
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Prepare environment
|
||||||
|
run: mkdir -p "$GITHUB_WORKSPACE/build"
|
||||||
|
|
||||||
|
- name: Download Build Artifact
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
let artifactName = process.env.ARTIFACT_NAME;
|
||||||
|
let allArtifacts = await github.rest.actions.listWorkflowRunArtifacts({
|
||||||
|
owner: context.repo.owner,
|
||||||
|
repo: context.repo.repo,
|
||||||
|
run_id: context.payload.workflow_run.id,
|
||||||
|
});
|
||||||
|
let matchArtifact = allArtifacts.data.artifacts.filter((artifact) => {
|
||||||
|
return artifact.name == artifactName
|
||||||
|
})[0];
|
||||||
|
let download = await github.rest.actions.downloadArtifact({
|
||||||
|
owner: context.repo.owner,
|
||||||
|
repo: context.repo.repo,
|
||||||
|
artifact_id: matchArtifact.id,
|
||||||
|
archive_format: 'zip',
|
||||||
|
});
|
||||||
|
let fs = require('fs');
|
||||||
|
fs.writeFileSync(
|
||||||
|
`${process.env.GITHUB_WORKSPACE}/build/${artifactName}.zip`,
|
||||||
|
Buffer.from(download.data)
|
||||||
|
);
|
||||||
|
|
||||||
|
- name: "Repackage as *-<arch>.tar.gz"
|
||||||
|
run: |
|
||||||
|
( \
|
||||||
|
cd "$GITHUB_WORKSPACE/build"; \
|
||||||
|
unzip "${ARTIFACT_NAME}.zip"; \
|
||||||
|
tar czf sapi_generator_tool-linux-x86_64.tar.gz \
|
||||||
|
sapi_generator_tool-linux-x86_64
|
||||||
|
)
|
||||||
|
|
||||||
|
- name: Create Pre-release
|
||||||
|
uses: marvinpinto/action-automatic-releases@v1.2.1
|
||||||
|
with:
|
||||||
|
repo_token: "${{secrets.GITHUB_TOKEN}}"
|
||||||
|
automatic_release_tag: "latest"
|
||||||
|
prerelease: true
|
||||||
|
files: |
|
||||||
|
${{github.workspace}}/build/sapi_generator_tool-linux-x86_64.tar.gz
|
Loading…
Reference in New Issue
Block a user