Skip to content

Fix CCO typo to CC0 in all locales #1063

Fix CCO typo to CC0 in all locales

Fix CCO typo to CC0 in all locales #1063

Workflow file for this run

name: Verify
on:
push:
branches:
- master
pull_request:
permissions:
contents: write
jobs:
lighthouse:
name: Lighthouse report
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/master'
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: treosh/lighthouse-ci-action@v11
with:
urls: |
https://simpleicons.org/
https://simpleicons.org/preview/
uploadArtifacts: true
temporaryPublicStorage: true
lint:
name: Lint (`cargo make lint`)
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
target: wasm32-unknown-unknown
components: clippy
cache-key: ${{ runner.os }}-rust-${{ hashFiles('**/Cargo.lock') }}-lint-${{ hashFiles('**/rust-toolchain.toml') }}
- name: Install tooling dependencies
uses: taiki-e/install-action@v2
with:
tool: cargo-make,cargo-machete
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Install Node.js dependencies
run: npm ci --no-audit --no-fund
- name: Build
run: cargo make build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Lint
run: cargo make lint
dylint:
name: Lint (`cargo make dylint`)
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get dylint library toolchain
id: get-channel
run: |
channel=$(cat rust-toolchain.toml | grep channel | cut -d'"' -f2)
echo "channel=$channel" >> $GITHUB_OUTPUT
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: ${{ steps.get-channel.outputs.channel }}
target: wasm32-unknown-unknown
components: clippy
cache-key: ${{ runner.os }}-rust-${{ hashFiles('**/Cargo.lock') }}-dylint-${{ steps.get-channel.outputs.channel }}-${{ hashFiles('**/rust-toolchain.toml') }}
cache-directories: |
~/.dylint_drivers
- name: Install tooling dependencies
uses: taiki-e/install-action@v2
with:
tool: cargo-make,dylint-link
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: npm
- name: Install Node.js dependencies
run: npm ci --no-audit --no-fund
- name: Build
run: cargo make build
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Lint
run: cargo make dylint
end2end-tests:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runs-on }}
strategy:
fail-fast: false
matrix:
include:
- name: Chrome Desktop${{ github.ref == 'refs/heads/master' && ' and publish' || '' }}
browser: chrome
suite: desktop
window-size: 1920x1080
runs-on: ubuntu-latest
- name: Edge Desktop
browser: edge
suite: desktop
window-size: 1920x1080
runs-on: ubuntu-latest
- name: Firefox Desktop
browser: firefox
suite: desktop
window-size: 1920x1080
runs-on: ubuntu-latest
#- name: Chrome Mobile
# browser: chrome
# runs-on: ubuntu-22.04
# window-size: 412x915
#- name: Chrome Mobile Landscape
# browser: chrome
# runs-on: ubuntu-22.04
# window-size: 915x412
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Rust
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
target: wasm32-unknown-unknown
- name: Should publish?
id: check-publish
shell: bash
run: |
if [ "${{ matrix.browser }}" = "chrome" ] && [ "${{ matrix.suite }}" = "desktop" ] && [ "${{ github.ref }}" = "refs/heads/master" ]; then
echo "publish=true" >> $GITHUB_OUTPUT
else
echo "publish=false" >> $GITHUB_OUTPUT
fi
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version-file: .node-version
cache: ${{ steps.check-publish.outputs.publish == 'true' && '' || 'npm' }}
- name: Install tooling dependencies
uses: taiki-e/install-action@v2
with:
tool: cargo-make
- name: Install Node.js dependencies
run: npm ci --no-audit --no-fund
- name: Build
run: cargo make build
env:
RELEASE: true
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Show dist tree
run: tree -ah -L 1 app/dist
- name: Run chromedriver
if: matrix.browser == 'chrome'
run: chromedriver --port=4444 &
- name: Run geckodriver
if: matrix.browser == 'firefox'
run: geckodriver --port=4444 &
- name: Run msedgedriver
if: matrix.browser == 'edge'
run: msedgedriver --port=4444 &
- uses: JarvusInnovations/background-action@v1
name: Run app server
with:
run: npx serve --no-clipboard -l 8080 app/dist &
wait-on: http://127.0.0.1:8080
wait-for: 5m
- name: Run tests
uses: nick-fields/retry@v3
continue-on-error: ${{ matrix.browser == 'firefox' }}
with:
timeout_minutes: 20
max_attempts: ${{ matrix.browser == 'firefox' && 1 || 3 }}
command: cargo test --package end2end --test ${{ matrix.suite }} -- --fail-fast --concurrency=${{ matrix.browser == 'firefox' && '1' || '12' }}
env:
BROWSER: ${{ matrix.browser }}
WINDOW_SIZE: ${{ matrix.window-size }}
- name: Check is fork
uses: ./.github/actions/check-is-fork
id: check-is-fork
if: steps.check-publish.outputs.publish == 'true'
with:
in-fork-message: 'Publish only can be executed in the main repository, skipping.'
- uses: actions/create-github-app-token@v1
if: |
steps.check-publish.outputs.publish == 'true' &&
steps.check-is-fork.outputs.is-fork == 'false'
id: app-token
with:
app-id: ${{ vars.BOT_APP_ID }}
private-key: ${{ secrets.BOT_PRIVATE_KEY }}
- name: Publish website
if: |
steps.check-publish.outputs.publish == 'true' &&
steps.check-is-fork.outputs.is-fork == 'false'
run: |
git config --global user.name "simple-icons[bot]"
git config --global user.email "simple-icons[bot]@users.noreply.github.com"
mkdir -p gh-pages-temp
cd gh-pages-temp
git init
git remote add origin "https://x-access-token:${{ steps.app-token.outputs.token }}@github.com/${{ github.repository }}.git"
git fetch origin gh-pages --depth=1 || true
git checkout origin/gh-pages -- CNAME 2>/dev/null || true
cp -r ../app/dist/* .
git add -A
git commit -m "Deploy from commit ${{ github.sha }}"
git push --force origin HEAD:gh-pages