From 3be2a1e89ecace3e533813a4a2fbc205220e6366 Mon Sep 17 00:00:00 2001 From: fedy95 Date: Tue, 30 Mar 2021 13:00:46 +0300 Subject: [PATCH] init-repo --- .drone.yml | 45 +++++++++++++++++++++++++++++++++++++++++++++ .editorconfig | 11 +++++++++++ Makefile | 16 ++++++++++++++++ README.md | 6 ++++++ image/Dockerfile | 12 ++++++++++++ tests/general.json | 4 ++++ 6 files changed, 94 insertions(+) create mode 100644 .drone.yml create mode 100644 .editorconfig create mode 100644 Makefile create mode 100644 README.md create mode 100644 image/Dockerfile create mode 100644 tests/general.json diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..c011694 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,45 @@ +--- +kind: pipeline +type: docker +name: default +image_pull_secrets: + - dockerconfigjson +volumes: + - name: dockersock + host: + path: /var/run/docker.sock + +steps: + - name: validate yaml + image: registry.fedy95.com/baseimage-yamllint:latest + commands: + - yamllint -c /yamllint/relaxed.yaml . + when: + event: pull_request + + - name: release + image: docker:dind + volumes: + - name: dockersock + path: /var/run/docker.sock + settings: + repo: baseimage/jsonlint + tags: + - ${DRONE_TAG} + environment: + REGISTRY: registry.fedy95.com + REGISTRY_USERNAME: + from_secret: REGISTRY_USERNAME + REGISTRY_PASSWORD: + from_secret: REGISTRY_PASSWORD + commands: + - docker build -t "$REGISTRY"/baseimage-jsonlint:"$DRONE_TAG" image -f image/Dockerfile + - docker build -t "$REGISTRY"/baseimage-jsonlint:latest image -f image/Dockerfile + - docker login "$REGISTRY" -u"$REGISTRY_USERNAME" -p"$REGISTRY_PASSWORD" + - docker push "$REGISTRY"/baseimage-jsonlint:"$DRONE_TAG" + - docker push "$REGISTRY"/baseimage-jsonlint:latest + - docker logout "$REGISTRY" + when: + event: tag + +... diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 0000000..37d1263 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,11 @@ +root = true + +[*] +charset = utf-8 +end_of_line = lf +indent_style = space +indent_size = 2 +trim_trailing_whitespace = true +insert_final_newline = true +max_line_length = 100 + diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..4a7ed42 --- /dev/null +++ b/Makefile @@ -0,0 +1,16 @@ +MAKEFLAGS += --silent + +.PHONY: * + +REPOSITORY=fedy95/baseimage:jsonlint +TAG=latest + +build_jsonlint: + docker build -t ${REPOSITORY}-${TAG} image -f image/Dockerfile + +lint: build_jsonlint + @docker run --rm $$(tty -s && echo "-it" || echo) -v $(PWD):/data ${REPOSITORY}-${TAG} -qc tests/general.json +lint_help: build_jsonlint + docker run --rm -v $(pwd):/data ${REPOSITORY}-${TAG} --help + +.DEFAULT_GOAL := lint diff --git a/README.md b/README.md new file mode 100644 index 0000000..e30594d --- /dev/null +++ b/README.md @@ -0,0 +1,6 @@ +### baseimage +[![Build Status](https://drone.fedy95.com/api/badges/baseimage/jsonlint/status.svg)](https://drone.fedy95.com/baseimage/jsonlint) + +--- +Baseimage for CI tasks +- [jsonlint git](https://github.com/adrienverge/jsonlint) diff --git a/image/Dockerfile b/image/Dockerfile new file mode 100644 index 0000000..85952d5 --- /dev/null +++ b/image/Dockerfile @@ -0,0 +1,12 @@ +FROM node:14.16.0-alpine3.13 + +ARG JSONLINT_VERSION=latest +ENV npm_config_loglevel=silent + +WORKDIR /data +RUN npm install -g jsonlint@"$JSONLINT_VERSION" && \ + rm -rf ~/.npm + +USER node +ENTRYPOINT ["jsonlint"] +CMD ["--help"] diff --git a/tests/general.json b/tests/general.json new file mode 100644 index 0000000..0259125 --- /dev/null +++ b/tests/general.json @@ -0,0 +1,4 @@ +{ + "key": "value", + "foo": "bar" +}