Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build update skia #926

Draft
wants to merge 9 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
166 changes: 1 addition & 165 deletions .github/workflows/validate-pr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,28 +27,8 @@ jobs:
esy install -P bench
esy install -P doc
esy install -P js
esy install -P examples
git diff --exit-code || (git add *lock; git commit -m "Update lockdir, ")
- name: Print esy cache
id: print_esy_cache
run: node .github/workflows/print_esy_cache.js
- name: Try to restore dependencies cache
id: deps-cache-macos
uses: actions/[email protected]
with:
path: ${{ steps.print_esy_cache.outputs.esy_cache }}
key: macos-latest-${{ hashFiles('**/index.json') }}
restore-keys: |
macos-latest-
- name: Build dependencies
if: steps.deps-cache-macos.outputs.cache-hit != 'true'
run: esy build-dependencies --release
- name: Generate opam files
run: |
esy build dune build @check
git diff --exit-code || ([[ "$(git log -1 --pretty=format:'%an')" != "Github Runner" ]] && git commit -am "opam, " || git commit --amend -am "$(git log -1 --pretty=format:'%s')opam, ")
- name: format sources files
run: |
esy format || ([[ "$(git log -1 --pretty=format:'%an')" != "Github Runner" ]] && git commit -am "format, " || git commit --amend -am "$(git log -1 --pretty=format:'%s')format, ")
- name: Push if it is not up to date
if: github.event_name != 'pull_request'
run: |
Expand All @@ -73,147 +53,3 @@ jobs:
body: "I have updated your lock dirs and formatted the code.\n" +
"Please @" + context.actor + " pull the last commit before pushing any more changes."
});

doc:
name: Push docs to GitHub's Pages
runs-on: macos-latest
steps:
- uses: actions/[email protected]
with:
node-version: 12
- uses: actions/checkout@v2
- name: Install esy
run: npm install -g esy
- run: brew install coreutils
- name: Solve doc dependencies
run: esy @doc install
- name: Print esy cache
id: print_esy_cache
run: node .github/workflows/print_esy_cache.js
- name: Try to restore dependencies cache
id: deps-cache-macos
uses: actions/[email protected]
with:
path: ${{ steps.print_esy_cache.outputs.esy_cache }}
key: macos-latest-${{ hashFiles('**/index.json') }}
restore-keys: |
macos-latest-
- name: Install doc dependencies
if: steps.deps-cache-macos.outputs.cache-hit != 'true'
run: esy @doc build-dependencies --release
- name: Print docs path
id: print_docs_path
run: node .github/workflows/print_docs_path.js
- name: Generate docs
run: esy @doc build --release
- run: ls ./_esy
- run: ls ./_esy/doc
- run: ls ./_esy/doc/store
- run: ls ./_esy/doc/store/b
- run: ls ./_esy/doc/store/b/revery-*
- run: ls ./_esy/doc/store/b/revery-*/default
- run: ls ./_esy/doc/store/b/revery-*/default/_doc
- run: ls ./_esy/doc/store/b/revery-*/default/_doc/_html
- run: echo $GITHUB_ACTOR $DOC_PATH
env:
DOC_PATH: ${{ steps.print_docs_path.outputs.docs_path }}
- run: find . -name "*.html"
- run: ls ./$DOC_PATH
env:
DOC_PATH: ${{ steps.print_docs_path.outputs.docs_path }}
- name: Deploy docs
if: github.ref == 'refs/heads/master'
uses: JamesIves/github-pages-deploy-action@releases/v3
with:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
BRANCH: gh-pages
CLEAN: true
FOLDER: ${{ steps.print_docs_path.outputs.docs_path }}

build_docker:
name: Build inside a docker
runs-on: ubuntu-latest
strategy:
# If we have many bug we can test on all plateform
fail-fast: false
matrix:
os: [archlinux, centos]
steps:
- uses: actions/checkout@v2
- run: docker build -t ${{ matrix.os }} scripts/docker/${{ matrix.os }}
- name: Create esy store
run: mkdir ~/.esy
- run: docker run --rm --volume $(pwd):/revery --volume ~/.esy:/esy/store ${{ matrix.os }} bash -c "cd /revery && esy install --prefix-path=/esy/store"
- name: Print esy cache
id: print_esy_cache
run: node .github/workflows/print_esy_cache.js
- name: Try to restore dependencies cache
id: deps-cache
uses: actions/[email protected]
with:
path: ${{ steps.print_esy_cache.outputs.esy_cache }}
key: ${{ matrix.os }}-${{ hashFiles('**/index.json') }}
restore-keys: |
${{ matrix.os }}-
- name: Build release dependencies
if: steps.deps-cache.outputs.cache-hit != 'true'
run: docker run --rm --volume $(pwd):/revery --volume ~/.esy:/esy/store ${{ matrix.os }} bash -c "cd /revery && esy build-dependencies --release --prefix-path=/esy/store"
- name: Build project in release
run: docker run --rm --volume $(pwd):/revery --volume ~/.esy:/esy/store ${{ matrix.os }} bash -c "cd /revery && esy build --release --prefix-path=/esy/store"
- name: Build test/dev dependencies
run: docker run --rm --volume $(pwd):/revery --volume ~/.esy:/esy/store ${{ matrix.os }} bash -c "cd /revery && esy build-dependencies --prefix-path=/esy/store"

build:
name: Build
runs-on: ${{ matrix.os }}
strategy:
# If we have many bug we can test on all plateform
fail-fast: false
matrix:
os: [windows-2016, ubuntu-latest, macos-latest]
steps:
- uses: actions/[email protected]
with:
node-version: 12
- uses: actions/checkout@v2
- name: Install esy
run: npm install -g esy
- name: Install native dependencies on ubuntu-latest
if: matrix.os == 'ubuntu-latest'
run: |
sudo apt-get update
sudo apt-get install -y libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libgl1-mesa-dev libglu1-mesa-dev mesa-utils mesa-utils-extra ragel libgtk-3-dev nasm
- name: Install dependencies
run: esy install
- name: Print esy cache
id: print_esy_cache
run: node .github/workflows/print_esy_cache.js
- name: Try to restore dependencies cache
if: matrix.os != 'windows-latest'
id: deps-cache-non-win
uses: actions/[email protected]
with:
path: ${{ steps.print_esy_cache.outputs.esy_cache }}
key: ${{ matrix.os }}-${{ hashFiles('**/index.json') }}
restore-keys: |
${{ matrix.os }}-
- name: Try to restore dependencies cache
if: matrix.os == 'windows-latest'
id: deps-cache-win
uses: actions/[email protected]
with:
path: ${{ steps.print_esy_cache.outputs.esy_cache }}
key: ${{ matrix.os }}-${{ hashFiles('**\index.json') }}
restore-keys: |
${{ matrix.os }}-
- name: Build dependencies
if: steps.deps-cache-win.outputs.cache-hit != 'true' && steps.deps-cache-non-win.outputs.cache-hit != 'true'
run: esy build-dependencies --release
- name: Build
run: esy build --release
- name: Build test/dev dependencies
if: steps.deps-cache-win.outputs.cache-hit != 'true' && steps.deps-cache-non-win.outputs.cache-hit != 'true'
run: |
esy build-dependencies
# We might have used restore-keys
esy cleanup .
Loading