Skip to content

Commit

Permalink
chore: give up on reusable workflows
Browse files Browse the repository at this point in the history
  • Loading branch information
francis2tm committed Feb 9, 2024
1 parent 3dd566f commit cad2d2f
Show file tree
Hide file tree
Showing 3 changed files with 111 additions and 72 deletions.
37 changes: 31 additions & 6 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,39 @@ jobs:
name: ${{ matrix.name }}
runs-on: ${{ matrix.runner }}
steps:
- name: "Setup actions/checkout"
uses: actions/checkout@v4
# setup ubuntu dependencies
- name: "Setup Ubuntu dependencies"
if: matrix.runner == 'ubuntu-20.04'
run: |
sudo apt-get update
sudo apt-get install -y build-essential curl wget file libssl-dev libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev patchelf
- name: "Setup-action"
uses: ./.github/workflows/setup-action
# install llvm (for llvm-copy) on macos only. For cpp runtimes.
- name: "Setup MacOS dependencies"
if: matrix.runner == 'macos-latest'
run: |
brew update
brew install llvm@17
echo "$$(brew --prefix llvm@17)/bin" >> $GITHUB_PATH
- name: "Install Node.js"
uses: actions/setup-node@v3
with:
node-version: 18

- name: "Install pnpm"
uses: pnpm/action-setup@v2
with:
runner: ${{ matrix.runner }}
target: ${{ matrix.target }}
version: 8
run_install: false

- name: "Setup rust"
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
components: rustfmt

- name: "Add rust target"
run: rustup target add ${{ matrix.target }}

- name: Install GUI frontend dependencies
run: cd edgen && pnpm install # change this to npm or pnpm depending on which one you use
Expand Down
27 changes: 23 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,30 @@ jobs:
- name: "Setup actions/checkout"
uses: actions/checkout@v4

- name: "Setup-action"
uses: ./.github/workflows/setup-action
# setup ubuntu dependencies
- name: "Setup Ubuntu dependencies"
run: |
sudo apt-get update
sudo apt-get install -y build-essential curl wget file libssl-dev libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev patchelf
- name: "Install Node.js"
uses: actions/setup-node@v3
with:
node-version: 18

- name: "Install pnpm"
uses: pnpm/action-setup@v2
with:
runner: ubuntu-20.04
target: x86_64-unknown-linux-gnu
version: 8
run_install: false

- name: "Setup rust"
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
components: rustfmt

- name: "Add rust target"
run: rustup target add x86_64-unknown-linux-gnu

- name: Rustfmt Check
uses: actions-rust-lang/rustfmt@v1
119 changes: 57 additions & 62 deletions .github/workflows/setup-action/action.yml
Original file line number Diff line number Diff line change
@@ -1,62 +1,57 @@
name: "Setup"
description: "Setup environment for CI"
inputs:
runner:
description: "The runner for the setup"
required: true
type: string
target:
description: "The target for Rust"
required: true
type: string

runs:
using: "composite"
steps:
# setup ubuntu dependencies
- name: "Setup Ubuntu dependencies"
if: inputs.runner == 'ubuntu-20.04'
run: |
sudo apt-get update
sudo apt-get install -y build-essential curl wget file libssl-dev libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev patchelf
shell: bash

# install llvm (for llvm-copy) on macos only. For cpp runtimes.
# - name: "Setup MacOS dependencies"
# if: inputs.runner == 'macos-latest'
# run: |
# brew update
# brew install llvm@17
# echo "$$(brew --prefix llvm@17)/bin" >> $GITHUB_PATH
# shell: bash

- name: Install LLVM and Clang
uses: KyleMayes/install-llvm-action@v1
with:
version: "17.0"

- name: "Install Node.js"
uses: actions/setup-node@v3
with:
node-version: 18

- name: "Install pnpm"
uses: pnpm/action-setup@v2
with:
version: 8
run_install: false

- name: "Setup rust"
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
components: rustfmt

- name: "Add rust target (macOS)"
if: inputs.runner == 'macos-latest'
run: rustup target add aarch64-apple-darwin
shell: bash

- name: "Add rust target (Other)"
if: inputs.runner != 'macos-latest'
run: rustup target add ${{ inputs.target }}
shell: bash
# name: "Setup"
# description: "Setup environment for CI"
# inputs:
# runner:
# description: "The runner for the setup"
# required: true
# type: string
# target:
# description: "The target for Rust"
# required: true
# type: string

# runs:
# using: "composite"
# steps:
# # setup ubuntu dependencies
# - name: "Setup Ubuntu dependencies"
# if: inputs.runner == 'ubuntu-20.04'
# run: |
# sudo apt-get update
# sudo apt-get install -y build-essential curl wget file libssl-dev libgtk-3-dev libwebkit2gtk-4.0-dev libayatana-appindicator3-dev librsvg2-dev patchelf
# shell: bash

# # install llvm (for llvm-copy) on macos only. For cpp runtimes.
# - name: "Setup MacOS dependencies"
# if: inputs.runner == 'macos-latest'
# run: |
# brew update
# brew install llvm@17
# echo "$$(brew --prefix llvm@17)/bin" >> $GITHUB_PATH
# shell: bash

# - name: "Install Node.js"
# uses: actions/setup-node@v3
# with:
# node-version: 18

# - name: "Install pnpm"
# uses: pnpm/action-setup@v2
# with:
# version: 8
# run_install: false

# - name: "Setup rust"
# uses: actions-rust-lang/setup-rust-toolchain@v1
# with:
# components: rustfmt

# - name: "Add rust target (macOS)"
# if: inputs.runner == 'macos-latest'
# run: rustup target add aarch64-apple-darwin
# shell: bash

# - name: "Add rust target (Other)"
# if: inputs.runner != 'macos-latest'
# run: rustup target add ${{ inputs.target }}
# shell: bash

0 comments on commit cad2d2f

Please sign in to comment.