mirror of
https://github.com/yannh/kubeconform.git
synced 2026-02-22 19:27:01 +00:00
Small CI for openapi2jsonschema, publish docker image
This commit is contained in:
parent
a31707ca58
commit
244606a1cd
4 changed files with 52 additions and 11 deletions
10
.github/workflows/main.yml
vendored
10
.github/workflows/main.yml
vendored
|
|
@ -16,16 +16,6 @@ jobs:
|
||||||
- name: acceptance-test
|
- name: acceptance-test
|
||||||
run: make docker-acceptance
|
run: make docker-acceptance
|
||||||
|
|
||||||
openapi2jsonschema-test:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
steps:
|
|
||||||
- name: checkout
|
|
||||||
uses: actions/checkout@v2
|
|
||||||
|
|
||||||
- name: test
|
|
||||||
working-directory: ./scripts
|
|
||||||
run: make docker-test docker-acceptance
|
|
||||||
|
|
||||||
goreleaser:
|
goreleaser:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs:
|
needs:
|
||||||
|
|
|
||||||
34
.github/workflows/openapi2jsonschema.yml
vendored
Normal file
34
.github/workflows/openapi2jsonschema.yml
vendored
Normal file
|
|
@ -0,0 +1,34 @@
|
||||||
|
name: ci
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
paths:
|
||||||
|
- scripts/**
|
||||||
|
|
||||||
|
env:
|
||||||
|
REGISTRY: ghcr.io
|
||||||
|
IMAGE_NAME: openapi2jsonschema
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
openapi2jsonschema:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: checkout
|
||||||
|
uses: actions/checkout@v2
|
||||||
|
|
||||||
|
- name: test
|
||||||
|
working-directory: ./scripts
|
||||||
|
run: make docker-test docker-acceptance
|
||||||
|
|
||||||
|
- name: Log in to the Container registry
|
||||||
|
uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9
|
||||||
|
with:
|
||||||
|
registry: ${{ env.REGISTRY }}
|
||||||
|
username: ${{ github.actor }}
|
||||||
|
password: ${{ secrets.GITHUB_TOKEN }}
|
||||||
|
|
||||||
|
- name: Build and push Docker image
|
||||||
|
uses: docker/build-push-action@ad44023a93711e3deb337508980b4b5e9bcdc5dc
|
||||||
|
with:
|
||||||
|
context: ./scripts
|
||||||
|
push: true
|
||||||
|
tags: latest
|
||||||
14
scripts/Dockerfile
Normal file
14
scripts/Dockerfile
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
FROM python:3.9.15-alpine3.16
|
||||||
|
LABEL org.opencontainers.image.authors="Various contributors" \
|
||||||
|
org.opencontainers.image.source="https://github.com/yannh/kubeconform/tree/master/scripts" \
|
||||||
|
org.opencontainers.image.description="Convert OpenAPI CRD to JSON Schema" \
|
||||||
|
org.opencontainers.image.licenses="Apache License 2.0" \
|
||||||
|
org.opencontainers.image.title="kubeconform" \
|
||||||
|
org.opencontainers.image.url="https://github.com/yannh/kubeconform/"
|
||||||
|
MAINTAINER Yann HAMON <yann@mandragor.org>
|
||||||
|
ENV FILENAME_FORMAT='{kind}-{group}-{version}'
|
||||||
|
|
||||||
|
COPY openapi2jsonschema.py /
|
||||||
|
RUN pip install pyyaml
|
||||||
|
|
||||||
|
ENTRYPOINT ["/openapi2jsonschema"]
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/make -f
|
#!/usr/bin/make -f
|
||||||
|
|
||||||
# This is really early days
|
.PHONY: test build-python-bats docker-test docker-acceptance build-image
|
||||||
|
|
||||||
test: build-python-bats docker-test docker-acceptance
|
test: build-python-bats docker-test docker-acceptance
|
||||||
|
|
||||||
|
|
@ -12,3 +12,6 @@ docker-test: build-python-bats
|
||||||
|
|
||||||
docker-acceptance: build-python-bats
|
docker-acceptance: build-python-bats
|
||||||
docker run --entrypoint "/usr/bin/bats" -t python-bats /code/acceptance.bats
|
docker run --entrypoint "/usr/bin/bats" -t python-bats /code/acceptance.bats
|
||||||
|
|
||||||
|
build-image: docker-test docker-acceptance
|
||||||
|
docker build -t openapi2jsonschema -f Dockerfile .
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue