ci: Add workflow for developing container (#231)

* ci: Add workflow for developing container
* ci: Add CI tasks to Makefile
* chore: Add RUNNER_TEMP to Dockerfile
* deps: Bump git from 2.25.0 to 2.26.0
This commit is contained in:
Shohei Ueda 2020-03-27 19:07:48 +09:00 committed by GitHub
parent e470a760d3
commit b71ad2d014
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 53 additions and 6 deletions

37
.github/workflows/dev-image.yml vendored Normal file
View File

@ -0,0 +1,37 @@
name: 'Dev Image CI'
on:
push:
branches:
- master
paths:
- '.github/workflows/dev-image.yml'
- '.dockerignore'
- '.nvmrc'
- 'Dockerfile'
- 'Makefile'
pull_request:
types:
- opened
- synchronize
paths:
- '.github/workflows/dev-image.yml'
- '.dockerignore'
- '.nvmrc'
- 'Dockerfile'
- 'Makefile'
jobs:
skipci:
runs-on: ubuntu-18.04
steps:
- run: echo "[skip ci] ${{ contains(github.event.head_commit.message, '[skip ci]') }}"
dev-image-test:
runs-on: ubuntu-18.04
if: contains(github.event.head_commit.message, '[skip ci]') == false
steps:
- uses: actions/checkout@v2
- run: make build
- run: make cirun cmd="npm ci"
- run: make ciall

View File

@ -13,7 +13,7 @@ RUN apt-get update && \
rm -rf /var/lib/apt/lists/* rm -rf /var/lib/apt/lists/*
WORKDIR /git WORKDIR /git
ENV GIT_VERSION="2.25.0" ENV GIT_VERSION="2.26.0"
RUN wget -q "https://github.com/git/git/archive/v${GIT_VERSION}.tar.gz" && \ RUN wget -q "https://github.com/git/git/archive/v${GIT_VERSION}.tar.gz" && \
tar -zxf "./v${GIT_VERSION}.tar.gz" && \ tar -zxf "./v${GIT_VERSION}.tar.gz" && \
rm "./v${GIT_VERSION}.tar.gz" && \ rm "./v${GIT_VERSION}.tar.gz" && \
@ -24,5 +24,6 @@ RUN wget -q "https://github.com/git/git/archive/v${GIT_VERSION}.tar.gz" && \
make install make install
WORKDIR /repo WORKDIR /repo
ENV RUNNER_TEMP="/tmp"
CMD [ "bash" ] CMD [ "bash" ]

View File

@ -4,6 +4,7 @@ IMAGE_NAME := actions_hugo_dev:latest
NODE_VERSION := $(shell cat ./.nvmrc) NODE_VERSION := $(shell cat ./.nvmrc)
DOCKER_BUILD := docker build . -t $(IMAGE_NAME) --build-arg NODE_VERSION=$(NODE_VERSION) DOCKER_BUILD := docker build . -t $(IMAGE_NAME) --build-arg NODE_VERSION=$(NODE_VERSION)
DOCKER_RUN := docker run --rm -i -t -v ${PWD}:/repo -v ~/.gitconfig:/root/.gitconfig $(IMAGE_NAME) DOCKER_RUN := docker run --rm -i -t -v ${PWD}:/repo -v ~/.gitconfig:/root/.gitconfig $(IMAGE_NAME)
DOCKER_RUN_CI := docker run --rm -v ${PWD}:/repo $(IMAGE_NAME)
.PHONY: build .PHONY: build
@ -14,10 +15,18 @@ build:
run: run:
$(DOCKER_RUN) $(cmd) $(DOCKER_RUN) $(cmd)
.PHONY: cirun
cirun:
$(DOCKER_RUN_CI) $(cmd)
.PHONY: test .PHONY: test
test: test:
$(DOCKER_RUN) npm test $(DOCKER_RUN) npm test
.PHONY: commit .PHONY: all
commit: all:
$(DOCKER_RUN) git commit -m "$(msg)" $(DOCKER_RUN) npm run all
.PHONY: ciall
ciall:
$(DOCKER_RUN_CI) npm run all

View File

@ -8,6 +8,7 @@
"npm": ">=6.13.7" "npm": ">=6.13.7"
}, },
"scripts": { "scripts": {
"all": "npm run format:check && npm run lint && npm test",
"lint": "eslint ./{src,__tests__}/**/*.ts", "lint": "eslint ./{src,__tests__}/**/*.ts",
"lint:fix": "eslint --fix ./{src,__tests__}/**/*.ts", "lint:fix": "eslint --fix ./{src,__tests__}/**/*.ts",
"test": "jest --coverage --verbose", "test": "jest --coverage --verbose",
@ -28,8 +29,7 @@
"lint-staged": { "lint-staged": {
"src/**/*.ts": [ "src/**/*.ts": [
"prettier --check", "prettier --check",
"eslint", "eslint"
"jest --bail --findRelatedTests"
] ]
}, },
"repository": { "repository": {