mirror of
https://github.com/lightpanda-io/browser.git
synced 2026-07-31 09:46:05 -04:00
Mutable tags like @v6 can be re-pointed by whoever controls the action, so the next run executes code nobody here reviewed, with the job's token and secrets. Pinning to the full commit sha freezes what runs. Version tags are kept as comments so renovate or dependabot can still track updates. dtolnay/rust-toolchain is pinned to a master commit with the toolchain moved to an explicit input, as its readme recommends for sha pinning.
87 lines
2.4 KiB
YAML
87 lines
2.4 KiB
YAML
name: e2e-integration-test
|
|
|
|
env:
|
|
LIGHTPANDA_DISABLE_TELEMETRY: true
|
|
|
|
on:
|
|
schedule:
|
|
- cron: "4 4 * * *"
|
|
# Allows you to run this workflow manually from the Actions tab
|
|
workflow_dispatch:
|
|
|
|
jobs:
|
|
zig-build-release:
|
|
name: zig build release
|
|
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
|
|
# Don't run the CI with draft PR.
|
|
if: github.event.pull_request.draft == false
|
|
|
|
steps:
|
|
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
with:
|
|
fetch-depth: 0
|
|
|
|
- uses: ./.github/actions/install
|
|
|
|
- name: zig build release
|
|
run: zig build -Dprebuilt_v8_path=v8/libc_v8.a -Doptimize=ReleaseFast -Dcpu=x86_64
|
|
|
|
- name: upload artifact
|
|
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
|
|
with:
|
|
name: lightpanda-build-release
|
|
path: |
|
|
zig-out/bin/lightpanda
|
|
retention-days: 1
|
|
|
|
demo-scripts:
|
|
name: demo-integration-scripts
|
|
needs: zig-build-release
|
|
|
|
runs-on: ubuntu-latest
|
|
timeout-minutes: 15
|
|
|
|
steps:
|
|
- uses: actions/checkout@df4cb1c069e1874edd31b4311f1884172cec0e10 # v6.0.3
|
|
with:
|
|
repository: 'lightpanda-io/demo'
|
|
fetch-depth: 0
|
|
|
|
- run: npm install
|
|
|
|
- name: download artifact
|
|
uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1
|
|
with:
|
|
name: lightpanda-build-release
|
|
|
|
- run: chmod a+x ./lightpanda
|
|
|
|
- name: LP Cache
|
|
id: lp-cache
|
|
uses: actions/cache@caa296126883cff596d87d8935842f9db880ef25 # v5.1.0
|
|
with:
|
|
path: /tmp/lp-cache
|
|
key: v1
|
|
|
|
- name: run end to end integration tests
|
|
continue-on-error: true
|
|
run: |
|
|
./lightpanda serve --http-cache-dir /tmp/lp-cache --http-proxy ${{ secrets.MASSIVE_PROXY_RESIDENTIAL_US }} --log-level error & echo $! > LPD.pid
|
|
go run integration/main.go |tee result.log
|
|
kill `cat LPD.pid`
|
|
|
|
- name: Send result to slack
|
|
uses: slackapi/slack-github-action@af78098f536edbc4de71162a307590698245be95 # v3.0.1
|
|
with:
|
|
errors: true
|
|
method: files.uploadV2
|
|
token: ${{ secrets.CI_SLACK_BOT_TOKEN }}
|
|
payload: |
|
|
channel_id: ${{ vars.E2E_SLACK_CHANNEL_ID }}
|
|
initial_comment: "Last e2e integration tests"
|
|
file: "./result.log"
|
|
filename: "e2e-integration-${{ github.sha }}.txt"
|