Skip to content

ci: modernize steps #1789

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

Merged
merged 36 commits into from
Sep 9, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
7e51ee9
Update ci.yml
mtrezza Sep 8, 2021
c8308db
Update CHANGELOG.md
mtrezza Sep 8, 2021
ccda619
adapt ci for node <10
mtrezza Sep 8, 2021
5f81894
Update ci.yml
mtrezza Sep 8, 2021
c3afc6e
bump node-sass for node 16 compatibility
mtrezza Sep 8, 2021
89db4a9
more chain bumps
mtrezza Sep 8, 2021
f81399f
Revert "more chain bumps"
mtrezza Sep 8, 2021
e621036
Revert "bump node-sass for node 16 compatibility"
mtrezza Sep 8, 2021
3c2cf49
fix determine node major
mtrezza Sep 8, 2021
7631011
fix determine node major
mtrezza Sep 8, 2021
85c4a24
add docker
mtrezza Sep 8, 2021
e4d393d
refactor docker
mtrezza Sep 8, 2021
dd6741f
add madge for circular dependencies
mtrezza Sep 8, 2021
6424af3
run docker publish only on tag release
mtrezza Sep 8, 2021
13fc960
Merge branch 'master' into fix-ci-node-env
mtrezza Sep 8, 2021
bfa1aab
add ci check
mtrezza Sep 8, 2021
95b85c0
Merge branch 'fix-ci-node-env' of https://github.com/mtrezza/parse-da…
mtrezza Sep 8, 2021
5ff2e65
changed default node vesion to 14
mtrezza Sep 8, 2021
e206471
Update ci.yml
mtrezza Sep 8, 2021
e189424
Update ci.yml
mtrezza Sep 8, 2021
c9de887
fixed running ci self-check
mtrezza Sep 8, 2021
87f80db
changed default node to 16
mtrezza Sep 8, 2021
ae87fb0
add docker builds
mtrezza Sep 8, 2021
c464e01
fix ci self-check
mtrezza Sep 8, 2021
63304f2
Update ci.yml
mtrezza Sep 8, 2021
5446046
fix ci self-check
mtrezza Sep 8, 2021
fe44300
Update ciCheck.js
mtrezza Sep 8, 2021
ff0bc54
Update ci.yml
mtrezza Sep 8, 2021
fc9b57d
Update ci.yml
mtrezza Sep 8, 2021
982a510
Update ci.yml
mtrezza Sep 8, 2021
13bcd5f
Update ci.yml
mtrezza Sep 8, 2021
85df63c
Update ci.yml
mtrezza Sep 8, 2021
37cd4c3
add node engine check
mtrezza Sep 9, 2021
eb6d5dc
Update ci.yml
mtrezza Sep 9, 2021
10e5c09
removed eol node envs
mtrezza Sep 9, 2021
cda9f19
Update nodeEngineCheck.js
mtrezza Sep 9, 2021
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
169 changes: 151 additions & 18 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,164 @@ on:
pull_request:
branches:
- '**'
env:
NODE_VERSION: 16.9.0
jobs:
check-ci:
name: CI Self-Check
timeout-minutes: 15
runs-on: ubuntu-18.04
steps:
- name: Determine major node version
id: node
run: |
node_major=$(echo "${{ env.NODE_VERSION }}" | cut -d'.' -f1)
echo "::set-output name=node_major::$(echo $node_major)"
- uses: actions/checkout@v2
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.node-version }}
- name: Cache Node.js modules
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ env.NODE_VERSION }}-
- name: Install dependencies
run: npm ci
- name: CI Environments Check
run: npm run ci:check
- name: CI Node Engine Check
run: npm run ci:checkNodeEngine
check-changelog:
name: Changelog
timeout-minutes: 5
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- uses: dangoslen/changelog-enforcer@v2
build:
# check-lint:
# name: Lint
# timeout-minutes: 15
# runs-on: ubuntu-18.04
# steps:
# - uses: actions/checkout@v2
# - name: Use Node.js ${{ env.NODE_VERSION }}
# uses: actions/setup-node@v1
# with:
# node-version: ${{ env.node-version }}
# - name: Cache Node.js modules
# uses: actions/cache@v2
# with:
# path: ~/.npm
# key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
# restore-keys: |
# ${{ runner.os }}-node-${{ env.NODE_VERSION }}-
# - name: Install dependencies
# run: npm ci
# - run: npm run lint
check-circular:
name: Circular Dependencies
timeout-minutes: 5
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Use Node.js ${{ env.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ env.node-version }}
- name: Cache Node.js modules
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ env.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ env.NODE_VERSION }}-
- name: Install dependencies
run: npm ci
- name: Scan for circular dependencies
run: npm run madge:circular
check-docker:
strategy:
matrix:
include:
- name: Docker linux/amd64
DOCKER_PLATFORM: linux/amd64
# Building currently fails for the platforms below
# - name: Docker linux/arm/v6
# DOCKER_PLATFORM: linux/arm/v6
# - name: Docker linux/arm/v7
# DOCKER_PLATFORM: linux/arm/v7
# - name: Docker linux/arm64/v8
# DOCKER_PLATFORM: linux/arm64/v8
fail-fast: false
name: ${{ matrix.name }}
timeout-minutes: 15
runs-on: ubuntu-18.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: '10.14'
- name: Cache Node.js modules
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-
- run: npm ci
- run: ./scripts/before_script.sh
env:
CI: true
- uses: actions/checkout@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Build docker image
uses: docker/build-push-action@v2
with:
platforms: ${{ matrix.DOCKER_PLATFORM }}
check-lock-file-version:
name: NPM Lock File Version
timeout-minutes: 5
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@v2
- name: Check NPM lock file version
uses: mansona/npm-lockfile-version@v1
with:
version: 1
check-build:
strategy:
matrix:
include:
- name: Node 12
NODE_VERSION: 12.22.6
- name: Node 14
NODE_VERSION: 14.17.6
# Enable the following lines when Parse Dashboard reached Node 16 compatibility
#- name: Node 16
# NODE_VERSION: 16.9.0
fail-fast: false
name: ${{ matrix.name }}
timeout-minutes: 15
runs-on: ubuntu-18.04
env:
NODE_VERSION: ${{ matrix.NODE_VERSION }}
steps:
- name: Determine major node version
id: node
run: |
node_major=$(echo "${{ matrix.NODE_VERSION }}" | cut -d'.' -f1)
echo "::set-output name=node_major::$(echo $node_major)"
- uses: actions/checkout@v2
- name: Use Node.js ${{ matrix.NODE_VERSION }}
uses: actions/setup-node@v1
with:
node-version: ${{ matrix.NODE_VERSION }}
- name: Cache Node.js modules
uses: actions/cache@v2
with:
path: ~/.npm
key: ${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-${{ hashFiles('**/package-lock.json') }}
restore-keys: |
${{ runner.os }}-node-${{ matrix.NODE_VERSION }}-
- name: Install dependencies (Node < 10)
run: npm install
if: ${{ steps.node.outputs.node_major < 10 }}
- name: Install dependencies (Node >= 10)
run: npm ci
if: ${{ steps.node.outputs.node_major >= 10 }}
- name: Test bundles
run: ./scripts/before_script.sh
env:
CI: true
10 changes: 6 additions & 4 deletions .github/workflows/docker-publish.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,13 @@
name: docker

on:
schedule:
# Nightly builds capture upstream updates to dependency images such as node.
- cron: '19 17 * * *'
# Disabled as we move to new branch model and plan to change the `latest` tag to mean "latest stable" instead of as currently "latest unstable"
# schedule:
# # Nightly builds capture upstream updates to dependency images such as node.
# - cron: '19 17 * * *'
push:
branches: [ master ]
# Disabled as we move to new branch model and plan to change the `latest` tag to mean "latest stable" instead of as currently "latest unstable"
# branches: [ master ]
tags: [ '*.*.*' ]

env:
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
- Fixed bug when opening a big modal, modal content is not visible due to Sidebar (Prerna Mehra) [#1777](https://github.com/parse-community/parse-dashboard/pull/1778)
- Fixed UI for a field containing an array of pointers (Prerna Mehra) [#1776](https://github.com/parse-community/parse-dashboard/pull/1776)
- Fixed bug when editing or copying a field containing an array of pointers [#1770](https://github.com/parse-community/parse-dashboard/issues/1770) (Prerna Mehra) [#1771](https://github.com/parse-community/parse-dashboard/pull/1771)
- Modernize CI (Manuel Trezza) [#1789](https://github.com/parse-community/parse-dashboard/pull/1789)

# 2.2.0
[Full Changelog](https://github.com/parse-community/parse-dashboard/compare/2.1.0...2.2.0)
Expand Down
Loading