Skip to content

fix(collect metrics): ignore tabs that don't start with http:// or … #27

fix(collect metrics): ignore tabs that don't start with http:// or …

fix(collect metrics): ignore tabs that don't start with http:// or … #27

Workflow file for this run

name: Release
on:
push:
branches: ["master", "beta"]
paths-ignore:
- ".husky/**"
- "**.md"
- package.json
permissions:
contents: write # to be able to publish a GitHub release
jobs:
build-extension:
runs-on: ubuntu-latest
outputs:
REPO_NAME: ${{ steps.extension-build.outputs.REPO_NAME }}
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: "yarn"
- name: Install dependencies
run: yarn
- name: Build
id: extension-build
run: |
REPO_NAME=$(echo "${{ github.repository }}" | awk -F/ '{print $2}')
echo "REPO_NAME=${REPO_NAME}" >> $GITHUB_OUTPUT
yarn build
- uses: actions/upload-artifact@v4
with:
name: ${{ steps.extension-build.outputs.REPO_NAME }}
path: dist
retention-days: 1
compression-level: 9 # maximum compression
build-proxy:
strategy:
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
runs-on: ${{ matrix.os }}
env:
BINARY_BASE_NAME: tpulse-proxy
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup Rust
uses: hecrj/setup-rust-action@v2
with:
rust-version: stable
- name: Build on Unix systems
if: ${{ matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'}}
id: build-proxy-unix
run: |
OS_NAME=$(echo "${{ matrix.os }}" | awk -F- '{print $1}')
if [ $OS_NAME == "ubuntu" ]; then
DISTRO="linux"
BUILD_TARGET="x86_64-unknown-linux-gnu"
elif [ $OS_NAME == "macos" ]; then
DISTRO="mac"
BUILD_TARGET="x86_64-apple-darwin"
fi
rustup target add $BUILD_TARGET
cargo build --release --target=$BUILD_TARGET --manifest-path src-proxy/Cargo.toml
ls src-proxy/target/$BUILD_TARGET/release
BINARY_NAME="${{ env.BINARY_BASE_NAME }}_$DISTRO"
cp src-proxy/target/$BUILD_TARGET/release/proxy $BINARY_NAME
echo "BINARY_NAME=${BINARY_NAME}" >> $GITHUB_OUTPUT
echo "DISTRO=${DISTRO}" >> $GITHUB_OUTPUT
- if: ${{ matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'}}
uses: actions/upload-artifact@v4
with:
name: ${{ steps.build-proxy-unix.outputs.DISTRO }}
path: ${{ steps.build-proxy-unix.outputs.BINARY_NAME }}
retention-days: 1
compression-level: 0
- name: Build on Windows
id: build-proxy-windows
if: ${{ matrix.os == 'windows-latest' }}
run: |
$BUILD_TARGET = "x86_64-pc-windows-msvc"
rustup target add $BUILD_TARGET
cargo build --release --target=$BUILD_TARGET --manifest-path src-proxy/Cargo.toml
ls src-proxy/target/$BUILD_TARGET/release
$BINARY_NAME = "${{ env.BINARY_BASE_NAME }}_windows.exe"
Copy-Item -Path "src-proxy\target\$BUILD_TARGET\release\proxy.exe" -Destination $BINARY_NAME
echo "BINARY_NAME=$BINARY_NAME" >> $env:GITHUB_OUTPUT
- if: ${{ matrix.os == 'windows-latest' }}
uses: actions/upload-artifact@v4
with:
name: windows
retention-days: 1
path: ${{ steps.build-proxy-windows.outputs.BINARY_NAME }}
compression-level: 0
release:
name: Release
needs: [build-extension, build-proxy]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: "yarn"
- name: Install dependencies
run: yarn add -D semantic-release @semantic-release/changelog @semantic-release/git
- name: Download all artifacts
uses: actions/download-artifact@v4
- name: Zip browser extension
env:
REPO_NAME: ${{ needs.build-extension.outputs.REPO_NAME }}
run: |
mkdir -p binaries
mv linux/* mac/* windows/* binaries
zip -r ${{ env.REPO_NAME }}.zip ${{ env.REPO_NAME }}
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.RELEASE_TOKEN }}
run: yarn semantic-release