kind: pipeline
type: docker
name: default

volumes:
  - name: dockersock
    host:
      path: /var/run/docker.sock

steps:
  - name: docker-build
    image: docker:24
    volumes:
      - name: dockersock
        path: /var/run/docker.sock
    environment:
      GITEA_USERNAME:
        from_secret: gitea_username
      GITEA_TOKEN:
        from_secret: gitea_token
    commands:
      - export DOCKER_BUILDKIT=1
      - docker buildx create --use --driver docker-container || true
      - echo "$GITEA_TOKEN" | docker login 192.168.1.9:3000 -u "$GITEA_USERNAME" --password-stdin
      - docker buildx build --builder default --tag 192.168.1.9:3000/tai/aberwyn/aberwyn:latest --tag 192.168.1.9:3000/tai/aberwyn/aberwyn:${DRONE_COMMIT_SHA:0:7} --cache-from=type=registry,ref=192.168.1.9:3000/tai/aberwyn/aberwyn:buildcache --push -f Aberwyn/Dockerfile .

  - name: notify-result
    image: alpine
    when:
      status:
        - success
        - failure
    commands:
      - apk add --no-cache curl
      - |
        if [ "$DRONE_BUILD_STATUS" = "success" ]; then
          curl -X POST http://192.168.1.196:8123/api/webhook/aberwyn_update_success
        else
          curl -X POST http://192.168.1.196:8123/api/webhook/aberwyn_update_failed
        fi
