diff --git a/.drone.star b/.drone.star index 7f904d7..5abfc68 100644 --- a/.drone.star +++ b/.drone.star @@ -1,36 +1,76 @@ def main(ctx): - return [ - step("amd64"), - step("arm64"), - ] - -def step(arch): - return { - "kind": "pipeline", - "name": "build-%s" % arch, - "steps": [ - { - "name": "build", - "image": "plugins/docker", - "repo": "dragonchaser/motsognir", - "volumes": [ - { - "name":"docker_sock", - "path":"/var/run/docker.sock" - } - ], - "commands": [ - "cd motsognir", - "docker build -t dragonchaser/motsognir:latest ." - ] - } - ], - "volumes": [ - { - "name":"docker_sock", - "host": { - "path": "/var/run/docker.sock" - } - } + return [ + stepPR("amd64"), + stepPR("arm64"), + stepMergeMaster("amd64"), + stepMergeMaster("arm64"), ] - } + + +def stepPR(arch): + return { + "kind": "pipeline", + "type": "docker", + "name": "docker-build-%s" % (arch), + "platform": { + "os": "linux", + "arch": arch, + }, + "steps": [ + { + "name": "build-and-push-image-%s" % (arch), + "image": "plugins/docker", + "settings": { + "dockerfile": "motsognir/Dockerfile", + "repo": "dragonchaser/motsognir", + "dry_run": "true", + "tag": "latest-%s" % (arch), + "username": { + "from_secret": "dockerhub-user" + }, + "password": { + "from_secret": "dockerhub-password" + } + } + }, + ], + "trigger": { + "ref": [ + "refs/pull/**", + ], + }, + } + +def stepMergeMaster(arch): + return { + "kind": "pipeline", + "type": "docker", + "name": "docker-publish-%s" % (arch), + "platform": { + "os": "linux", + "arch": arch, + }, + "steps": [ + { + "name": "build-image-%s" % (arch), + "image": "plugins/docker", + "settings": { + "dockerfile": "motsognir/Dockerfile", + "repo": "dragonchaser/motsognir", + "dry_run": "true", + "tag": "latest-%s" % (arch), + "username": { + "from_secret": "dockerhub-user" + }, + "password": { + "from_secret": "dockerhub-password" + } + } + }, + ], + "trigger": { + "ref": [ + "refs/heads/master", + ], + }, + } diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..eef18b7 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.drone.yml diff --git a/motsognir/Dockerfile b/motsognir/Dockerfile index 9ddd1bf..c384c4c 100644 --- a/motsognir/Dockerfile +++ b/motsognir/Dockerfile @@ -14,6 +14,6 @@ RUN rm -Rfv /etc/apt/sources.list.* RUN rm -Rfv /build RUN useradd -ms /bin/bash -d /gopher gopher WORKDIR /gopher -COPY entrypoint.sh / -COPY rsyslog.conf /etc +COPY motsognir/entrypoint.sh / +COPY motsognir/rsyslog.conf /etc ENTRYPOINT ["/entrypoint.sh"]