/[sudobot]/trunk/.github/workflows/build.yml
ViewVC logotype

Diff of /trunk/.github/workflows/build.yml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 134 by rakin, Mon Jul 29 17:28:44 2024 UTC revision 572 by rakinar2, Mon Jul 29 17:51:37 2024 UTC
# Line 3  Line 3 
3    
4  name: Build  name: Build
5    
6  on: [ push, pull_request ]  on: [push, pull_request]
7    
8  jobs:  jobs:
9    build:    build:
10        strategy:
11          matrix:
12            node-version: [21.x, 22.x]
13            os: [ubuntu-latest, macos-latest, windows-latest]
14    
15      runs-on: ubuntu-latest      runs-on: ${{ matrix.os }}
16    
17        steps:
18          - uses: actions/checkout@v3
19    
20          - name: Use Node.js ${{ matrix.node-version }}
21            uses: actions/setup-node@v3
22            with:
23              node-version: ${{ matrix.node-version }}
24    
25          - name: Install Libraries (Linux)
26            run: sudo apt update && sudo apt install build-essential librsvg2-dev libgif-dev giflib-tools libcurl4 libcurl4-gnutls-dev libgtk-3-dev libpango1.0-dev libpng-dev libpng++-dev libpng-tools libjpeg-tools libjpeg-progs libjpeg-dev -y
27            if: matrix.os == 'ubuntu-latest'
28    
29          - name: Install Libraries and Tools (macOS)
30            run: brew install curl pkg-config cairo pango libpng jpeg giflib librsvg
31            if: matrix.os == 'macos-latest'
32    
33          - name: "Install Native Libraries"
34            run: |
35              git clone https://github.com/Cogmasters/concord;
36              cd concord;
37              make;
38              sudo make install;
39              cd ..;
40            if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
41    
42          - name: "Install Dependencies"
43            run: npm install -D
44    
45          - name: "ESLint"
46            run: npm run lint -- --max-warnings=0
47    
48          - name: "Build (TypeScript)"
49            run: npm run build --if-present
50    
51          - name: "Build (Native)"
52            run: make
53            if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
54    
55          - name: "Test"
56            run: npx vitest run --coverage
57    
58          - name: Upload coverage reports to Codecov
59            uses: codecov/[email protected]
60            with:
61              token: ${{ secrets.CODECOV_TOKEN }}
62              slug: onesoft-sudo/sudobot
63    
64      blazebuild:
65      strategy:      strategy:
66        matrix:        matrix:
67          node-version: [14.x, 16.x]          os: [ubuntu-latest, macos-latest, windows-latest]
68          # See supported Node.js release schedule at https://nodejs.org/en/about/releases/  
69        runs-on: ${{ matrix.os }}
70    
71      steps:      steps:
72      - uses: actions/checkout@v3        - name: Set git to use LF
73      - name: Use Node.js ${{ matrix.node-version }}          run: |
74        uses: actions/setup-node@v3            git config --global core.autocrlf false
75        with:            git config --global core.eol lf
76          node-version: ${{ matrix.node-version }}  
77          cache: 'npm'        - uses: actions/checkout@v3
78      - run: npm update  
79      - run: npm install --dev        - name: Install tools on macOS
80      - run: npm run build --if-present          run: brew install curl pkg-config cairo pango libpng jpeg giflib librsvg
81      - run: npm run test --if-present          if: matrix.os == 'macos-latest'
82    
83          - name: Build with BlazeBuild
84            run: ./blazew build

Legend:
Removed from v.134  
changed lines
  Added in v.572

[email protected]
ViewVC Help
Powered by ViewVC 1.1.26