-
Notifications
You must be signed in to change notification settings - Fork 47
51 lines (45 loc) · 1.66 KB
/
deploy-website.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
name: "Validate and deploy website"
on:
push:
pull_request:
jobs:
validate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
- name: Test validators
working-directory: ./validation
run: php test.php
- name: Validate line-colors.csv
working-directory: ./validation
run: php check-lines.php
- name: Validate product-brands.csv
working-directory: ./validation
run: php check-products.php
- name: Install svgcleaner
run: sudo apt update && sudo apt install -y -qq wget && wget https://github.com/RazrFalcon/svgcleaner/releases/download/v0.9.5/svgcleaner_linux_x86_64_0.9.5.tar.gz && tar -xf svgcleaner_linux_*.tar.gz && sudo mv svgcleaner /usr/local/bin && rm -f svgcleaner svgcleaner_linux_*.tar.gz
- name: Ensure all product icons are cleaned
working-directory: ./products
run: for product in *.svg; do svgcleaner $product clean-$product && diff -u $product clean-$product || exit 1 ; done && rm clean-*.svg
deploy:
needs: [validate]
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
- name: Write out Website
working-directory: ./website
run: php index.php > index.html && rm index.php
- name: Deploy to GitHub Pages
uses: peaceiris/actions-gh-pages@v3
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: ./website