https://github.com/bluesky-social/goat but with tangled's CI
10
fork

Configure Feed

Select the types of activity you want to include in your feed.

ci: add tangled workflows

Signed-off-by: oppiliappan <me@oppi.li>

+70 -9
+1
.gitignore
··· 28 28 # Don't ignore this file itself, or other specific dotfiles 29 29 !.gitignore 30 30 !.github/ 31 + !.tangled/ 31 32 !.golangci.yaml 32 33 !.goreleaser.yaml
+11 -5
.goreleaser.yaml
··· 55 55 signs: 56 56 - artifacts: checksum 57 57 58 - release: 59 - footer: >- 60 - 61 - --- 58 + publishers: 59 + - name: atproto-pds 60 + cmd: ./scripts/publish-artifact.sh 61 + env: 62 + - APP_PASSWORD={{ .Env.APP_PASSWORD }} 63 + - REPO_URL={{ .Env.REPO_URL }} 64 + - TAG={{ .Tag }} 65 + - ARTIFACT_PATH={{ abs .ArtifactPath }} 66 + - ARTIFACT_NAME={{ .ArtifactName }} 62 67 63 - Released by [GoReleaser](https://github.com/goreleaser/goreleaser). 68 + release: 69 + disable: true
+22
.tangled/workflows/build-and-test.yml
··· 1 + when: 2 + - event: ["push", "pull_request"] 3 + branch: ["main", "ci"] 4 + 5 + engine: nixery 6 + 7 + dependencies: 8 + nixpkgs: 9 + - go 10 + - gcc 11 + - gnumake 12 + 13 + environment: 14 + CGO_ENABLED: 1 15 + 16 + steps: 17 + - name: build 18 + command: | 19 + make build 20 + 21 + - name: test 22 + command: make test
+18
.tangled/workflows/lint.yml
··· 1 + when: 2 + - event: ["push", "pull_request"] 3 + branch: ["main", "ci"] 4 + 5 + engine: nixery 6 + 7 + dependencies: 8 + nixpkgs: 9 + - go 10 + - gcc 11 + - gnumake 12 + 13 + environment: 14 + CGO_ENABLED: 1 15 + 16 + steps: 17 + - name: lint 18 + command: make lint
-4
Makefile
··· 1 - 2 - SHELL = /bin/bash 3 - .SHELLFLAGS = -o pipefail -c 4 - 5 1 # base path for Lexicon document tree (for lexgen) 6 2 LEXDIR?=../atproto/lexicons 7 3
+18
scripts/publish-artifact.sh
··· 1 + #!/usr/bin/env bash 2 + set -e 3 + 4 + TAG_HASH=$(git rev-parse "$TAG"^{tag}) && 5 + TAG_BYTES=$(echo -n "$TAG_HASH" | xxd -r -p | base64 | tr -d '=') && 6 + BLOB_OUTPUT=$(./goat blob upload "$ARTIFACT_PATH") && 7 + echo "$BLOB_OUTPUT" && 8 + ARTIFACT_JSON=$(echo "$BLOB_OUTPUT" | jq --arg tag "$TAG_BYTES" --arg name "$ARTIFACT_NAME" --arg repo "$REPO_URL" --arg created "$(date -Iseconds)" '{ 9 + "tag": {"$bytes": $tag}, 10 + "name": $name, 11 + "repo": $repo, 12 + "$type": "sh.tangled.repo.artifact", 13 + "artifact": ., 14 + "createdAt": $created 15 + }') && 16 + echo "$ARTIFACT_JSON" > temp_artifact.json && 17 + cat temp_artifact.json && 18 + ./goat record create temp_artifact.json -n