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 \
|
||||
lsb-release \
|
||||
make \
|
||||
ninja-build \
|
||||
software-properties-common \
|
||||
wget
|
||||
wget https://apt.llvm.org/llvm.sh
|
||||
chmod +x llvm.sh
|
||||
./llvm.sh 16 all
|
||||
|
||||
- name: Install ninja-build tool
|
||||
uses: seanmiddleditch/gha-setup-ninja@v3
|
||||
|
||||
- name: Configure CMake
|
||||
run: |
|
||||
mkdir -p "$GITHUB_WORKSPACE/build"
|
||||
|
@ -65,3 +63,4 @@ jobs:
|
|||
with:
|
||||
name: sapi_generator_tool-linux
|
||||
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