diff options
author | XhmikosR <xhmikosr@gmail.com> | 2019-09-26 16:25:26 +0300 |
---|---|---|
committer | XhmikosR <xhmikosr@gmail.com> | 2020-06-10 08:19:51 +0300 |
commit | e7604207a185f506fe75fdc53d2a58ab37591ae2 (patch) | |
tree | 5f6d42a517d48317c735ed1a623b4c4b61c1b4ba /.github/workflows | |
parent | 32d18d199c8bc5fe6f993bce53e8d793c5523fca (diff) |
Split GitHub Actions.
Everything should be faster now. Also, we can restart a failed workflow and not the whole thing like before.
Diffstat (limited to '.github/workflows')
-rw-r--r-- | .github/workflows/browserstack.yml | 39 | ||||
-rw-r--r-- | .github/workflows/bundlewatch.yml | 38 | ||||
-rw-r--r-- | .github/workflows/css.yml | 33 | ||||
-rw-r--r-- | .github/workflows/docs.yml | 35 | ||||
-rw-r--r-- | .github/workflows/js.yml (renamed from .github/workflows/test.yml) | 22 | ||||
-rw-r--r-- | .github/workflows/lint.yml | 33 |
6 files changed, 183 insertions, 17 deletions
diff --git a/.github/workflows/browserstack.yml b/.github/workflows/browserstack.yml new file mode 100644 index 0000000000..a14bd83f0c --- /dev/null +++ b/.github/workflows/browserstack.yml @@ -0,0 +1,39 @@ +name: BrowserStack +on: [push] +env: + CI: true + NODE: 10.x + +jobs: + browserstack: + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@v2 + + - name: Set Node.js version + uses: actions/setup-node@v1 + with: + node-version: "${{ env.NODE }}" + + - name: Set up npm cache + uses: actions/cache@v2 + with: + path: ~/.npm + key: ${{ runner.os }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/browserstack.yml') }} + restore-keys: | + ${{ runner.OS }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/browserstack.yml') }} + ${{ runner.OS }}-node-v${{ env.NODE }}- + + - name: Install npm dependencies + run: npm ci + + - name: Run dist + run: npm run dist + + - name: Run BrowserStack tests + run: npm run js-test-cloud + env: + BROWSER_STACK_ACCESS_KEY: "${{ secrets.BROWSER_STACK_ACCESS_KEY }}" + BROWSER_STACK_USERNAME: "${{ secrets.BROWSER_STACK_USERNAME }}" diff --git a/.github/workflows/bundlewatch.yml b/.github/workflows/bundlewatch.yml new file mode 100644 index 0000000000..5a2ccc8771 --- /dev/null +++ b/.github/workflows/bundlewatch.yml @@ -0,0 +1,38 @@ +name: Bundlewatch +on: [push, pull_request] +env: + CI: true + NODE: 10.x + +jobs: + bundlewatch: + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@v2 + + - name: Set Node.js version + uses: actions/setup-node@v1 + with: + node-version: "${{ env.NODE }}" + + - name: Set up npm cache + uses: actions/cache@v2 + with: + path: ~/.npm + key: ${{ runner.os }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/bundlesize.yml') }} + restore-keys: | + ${{ runner.OS }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/bundlesize.yml') }} + ${{ runner.OS }}-node-v${{ env.NODE }}- + + - name: Install npm dependencies + run: npm ci + + - name: Run dist + run: npm run dist + + - name: Run bundlewatch + run: npm run bundlewatch + env: + BUNDLEWATCH_GITHUB_TOKEN: "${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }}" diff --git a/.github/workflows/css.yml b/.github/workflows/css.yml new file mode 100644 index 0000000000..cb4159da2b --- /dev/null +++ b/.github/workflows/css.yml @@ -0,0 +1,33 @@ +name: CSS +on: [push, pull_request] +env: + CI: true + NODE: 10.x + +jobs: + css: + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@v2 + + - name: Set Node.js version + uses: actions/setup-node@v1 + with: + node-version: "${{ env.NODE }}" + + - name: Set up npm cache + uses: actions/cache@v2 + with: + path: ~/.npm + key: ${{ runner.os }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/css.yml') }} + restore-keys: | + ${{ runner.OS }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/css.yml') }} + ${{ runner.OS }}-node-v${{ env.NODE }}- + + - name: Install npm dependencies + run: npm ci + + - name: Build CSS + run: npm run css diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000000..d40371d605 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,35 @@ +name: Docs +on: [push, pull_request] +env: + CI: true + NODE: 10.x + +jobs: + docs: + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@v2 + + - name: Set Node.js version + uses: actions/setup-node@v1 + with: + node-version: "${{ env.NODE }}" + + - run: java -version + + - name: Set up npm cache + uses: actions/cache@v2 + with: + path: ~/.npm + key: ${{ runner.os }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/docs.yml') }} + restore-keys: | + ${{ runner.OS }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/docs.yml') }} + ${{ runner.OS }}-node-v${{ env.NODE }}- + + - name: Install npm dependencies + run: npm ci + + - name: Test docs + run: npm run docs diff --git a/.github/workflows/test.yml b/.github/workflows/js.yml index a990301dc1..2d0c72b6be 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/js.yml @@ -1,4 +1,4 @@ -name: Tests +name: JS Tests on: [push, pull_request] env: CI: true @@ -22,8 +22,6 @@ jobs: with: node-version: ${{ matrix.node }} - - run: java -version - - name: Set up npm cache uses: actions/cache@v2 with: @@ -36,21 +34,11 @@ jobs: - name: Install npm dependencies run: npm ci - - name: Run tests - run: npm test + - name: Run dist + run: npm run js - - name: Run bundlewatch - run: npm run bundlewatch - if: matrix.node == 10 - env: - BUNDLEWATCH_GITHUB_TOKEN: "${{ secrets.BUNDLEWATCH_GITHUB_TOKEN }}" - - - name: Run BrowserStack tests - run: npm run js-test-cloud - if: matrix.node == 10 && github.repository == 'twbs/bootstrap' && github.event_name == 'push' - env: - BROWSER_STACK_ACCESS_KEY: "${{ secrets.BROWSER_STACK_ACCESS_KEY }}" - BROWSER_STACK_USERNAME: "${{ secrets.BROWSER_STACK_USERNAME }}" + - name: Run JS tests + run: npm run js-test - name: Run Coveralls uses: coverallsapp/github-action@master diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml new file mode 100644 index 0000000000..715bdae1cd --- /dev/null +++ b/.github/workflows/lint.yml @@ -0,0 +1,33 @@ +name: Lint +on: [push, pull_request] +env: + CI: true + NODE: 10.x + +jobs: + lint: + runs-on: ubuntu-latest + + steps: + - name: Clone repository + uses: actions/checkout@v2 + + - name: Set Node.js version + uses: actions/setup-node@v1 + with: + node-version: "${{ env.NODE }}" + + - name: Set up npm cache + uses: actions/cache@v2 + with: + path: ~/.npm + key: ${{ runner.os }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/lint.yml') }} + restore-keys: | + ${{ runner.OS }}-node-v${{ env.NODE }}-${{ hashFiles('package.json') }}-${{ hashFiles('package-lock.json') }}-${{ hashFiles('.github/workflows/lint.yml') }} + ${{ runner.OS }}-node-v${{ env.NODE }}- + + - name: Install npm dependencies + run: npm ci + + - name: Lint CSS and JS + run: npm run lint |