diff options
Diffstat (limited to '.drone.yml')
| -rw-r--r-- | .drone.yml | 223 |
1 files changed, 0 insertions, 223 deletions
diff --git a/.drone.yml b/.drone.yml deleted file mode 100644 index 87038bdd2..000000000 --- a/.drone.yml +++ /dev/null @@ -1,223 +0,0 @@ ---- -### Drone configuration file for GoToSocial. -### Connects to https://drone.superseriousbusiness.org to perform testing, linting, and automatic builds/pushes to docker. -### -### For documentation on drone, see: https://docs.drone.io/ -### For documentation on drone docker pipelines in particular: https://docs.drone.io/pipeline/docker/overview/ -kind: pipeline -type: docker -name: default - -steps: - # We use golangci-lint for linting. - # See: https://golangci-lint.run/ - - name: lint - image: golangci/golangci-lint:v1.62.0 - volumes: - - name: go-build-cache - path: /root/.cache/go-build - - name: golangci-lint-cache - path: /root/.cache/golangci-lint - - name: go-src - path: /go - commands: - - golangci-lint run - when: - event: - include: - - pull_request - - - name: test - image: golang:1.23-alpine - volumes: - - name: go-build-cache - path: /root/.cache/go-build - - name: go-src - path: /go - - name: wazero-compilation-cache - path: /root/.cache/wazero - environment: - CGO_ENABLED: "0" - GTS_WAZERO_COMPILATION_CACHE: "/root/.cache/wazero" - commands: - - apk update --no-cache && apk add git - - >- - go test - -failfast - -timeout=20m - -tags "netgo osusergo static_build kvformat timetzdata" - ./... - - ./test/envparsing.sh - - ./test/swagger.sh - depends_on: - - lint - when: - event: - include: - - pull_request - - - name: web-setup - image: node:18-alpine - volumes: - - name: yarn_cache - path: /tmp/cache - commands: - - yarn --cwd ./web/source install --frozen-lockfile --cache-folder /tmp/cache - - yarn --cwd ./web/source ts-patch install # https://typia.io/docs/setup/#manual-setup - depends_on: - - test - when: - event: - include: - - pull_request - - - name: web-lint - image: node:18-alpine - commands: - - yarn --cwd ./web/source lint - depends_on: - - web-setup - when: - event: - include: - - pull_request - - - name: web-build - image: node:18-alpine - commands: - - yarn --cwd ./web/source build - depends_on: - - web-setup - when: - event: - include: - - pull_request - - - name: snapshot - image: superseriousbusiness/gotosocial-drone-build:0.8.0 # https://github.com/superseriousbusiness/gotosocial-drone-build - volumes: - - name: go-build-cache - path: /root/.cache/go-build - - name: docker - path: /var/run/docker.sock - environment: - DOCKER_USERNAME: gotosocial - DOCKER_PASSWORD: - from_secret: gts_docker_password - S3_ACCESS_KEY_ID: - from_secret: gts_s3_access_key_id - S3_SECRET_ACCESS_KEY: - from_secret: gts_s3_secret_access_key - S3_HOSTNAME: "https://s3.superseriousbusiness.org" - S3_BUCKET_NAME: "gotosocial-snapshots" - commands: - # Create a snapshot build with GoReleaser. - - git fetch --tags - - goreleaser release --clean --snapshot - - # Login to Docker, push Docker image snapshots + manifests. - - /go/dockerlogin.sh - - docker push superseriousbusiness/gotosocial:snapshot-arm64v8 - - docker push superseriousbusiness/gotosocial:snapshot-amd64 - - | - docker manifest create superseriousbusiness/gotosocial:snapshot \ - superseriousbusiness/gotosocial:snapshot-amd64 \ - superseriousbusiness/gotosocial:snapshot-arm64v8 - - docker manifest push superseriousbusiness/gotosocial:snapshot - - # Publish binary .tar.gz snapshots to S3. - - /go/snapshot_publish.sh - when: - event: - include: - - push - branch: - include: - - main - - - name: release - image: superseriousbusiness/gotosocial-drone-build:0.8.0 # https://github.com/superseriousbusiness/gotosocial-drone-build - volumes: - - name: go-build-cache - path: /root/.cache/go-build - - name: docker - path: /var/run/docker.sock - environment: - DOCKER_USERNAME: gotosocial - DOCKER_PASSWORD: - from_secret: gts_docker_password - GITHUB_TOKEN: - from_secret: github_token - commands: - - git fetch --tags - - /go/dockerlogin.sh - - # When releasing, compare commits to the most recent tag that is not the - # current one AND is not a release candidate tag (ie., no "rc" in the name). - # - # The DRONE_TAG env var should point to the tag that triggered this build. - # See: https://docs.drone.io/pipeline/environment/reference/drone-tag/ - # - # Note, this may cause annoyances when doing backport releases, for example, - # releasing v0.10.1 when we've already released v0.15.0 or whatever, but - # they should only be superficial annoyances related to the release notes. - - GORELEASER_PREVIOUS_TAG=$(git tag -l | grep -v "rc\|${DRONE_TAG}" | sort -V -r | head -n 1) goreleaser release --clean - when: - event: - include: - - tag - -# We can speed up builds significantly by caching build artifacts between runs. -# See: https://docs.drone.io/pipeline/docker/syntax/volumes/host/ -volumes: - - name: go-build-cache - host: - path: /drone/gotosocial/go-build - - name: golangci-lint-cache - host: - path: /drone/gotosocial/golangci-lint - - name: go-src - host: - path: /drone/gotosocial/go - - name: docker - host: - path: /var/run/docker.sock - -trigger: - repo: - - superseriousbusiness/gotosocial - - NyaaaWhatsUpDoc/gotosocial - - f0x52/gotosocial - ---- -kind: pipeline -type: docker -name: cron - -trigger: - event: - - cron - cron: - - nightly - -clone: - disable: true - -steps: - - name: mirror - image: superseriousbusiness/gotosocial-drone-build:0.8.0 - environment: - ORIGIN_REPO: https://github.com/superseriousbusiness/gotosocial - TARGET_REPO: https://codeberg.org/superseriousbusiness/gotosocial - CODEBERG_USER: gotosocialbot - CODEBERG_EMAIL: admin@gotosocial.org - CODEBERG_TOKEN: - from_secret: gts_codeberg_token - commands: - - /go/codeberg_clone.sh - ---- -kind: signature -hmac: 64ce0d466c7a48b6aa24a8836cfad7eae71faeae0b2e5342beb6428233a65eee - -... |
