diff --git a/.github/release-drafter-valkey.yml b/.github/release-drafter-valkey.yml new file mode 100644 index 00000000..9143bdb8 --- /dev/null +++ b/.github/release-drafter-valkey.yml @@ -0,0 +1,50 @@ +name-template: 'Valkey - v$RESOLVED_VERSION' +tag-template: 'valkey/v$RESOLVED_VERSION' +tag-prefix: valkey/v +include-paths: + - valkey +categories: + - title: 'โ— Breaking Changes' + labels: + - 'โ— BreakingChange' + - title: '๐Ÿš€ New' + labels: + - 'โœ๏ธ Feature' + - title: '๐Ÿงน Updates' + labels: + - '๐Ÿงน Updates' + - '๐Ÿค– Dependencies' + - title: '๐Ÿ› Fixes' + labels: + - 'โ˜ข๏ธ Bug' + - title: '๐Ÿ“š Documentation' + labels: + - '๐Ÿ“’ Documentation' +change-template: '- $TITLE (#$NUMBER)' +change-title-escapes: '\<*_&' # You can add # and @ to disable mentions, and add ` to disable code blocks. +exclude-contributors: + - dependabot + - dependabot[bot] +version-resolver: + major: + labels: + - 'major' + - 'โ— BreakingChange' + minor: + labels: + - 'minor' + - 'โœ๏ธ Feature' + patch: + labels: + - 'patch' + - '๐Ÿ“’ Documentation' + - 'โ˜ข๏ธ Bug' + - '๐Ÿค– Dependencies' + - '๐Ÿงน Updates' + default: patch +template: | + $CHANGES + + **Full Changelog**: https://github.com/$OWNER/$REPOSITORY/compare/$PREVIOUS_TAG...valkey/v$RESOLVED_VERSION + + Thank you $CONTRIBUTORS for making this update possible. diff --git a/.github/workflows/release-drafter-valkey.yml b/.github/workflows/release-drafter-valkey.yml new file mode 100644 index 00000000..befac40c --- /dev/null +++ b/.github/workflows/release-drafter-valkey.yml @@ -0,0 +1,19 @@ +name: Release Drafter Valkey +on: + push: + # branches to consider in the event; optional, defaults to all + branches: + - master + - main + paths: + - 'valkey/**' +jobs: + draft_release_valkey: + runs-on: ubuntu-latest + timeout-minutes: 30 + steps: + - uses: release-drafter/release-drafter@v6 + with: + config-name: release-drafter-valkey.yml + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/test-valkey.yml b/.github/workflows/test-valkey.yml new file mode 100644 index 00000000..3281a9c4 --- /dev/null +++ b/.github/workflows/test-valkey.yml @@ -0,0 +1,62 @@ +on: + push: + branches: + - master + - main + paths: + - 'valkey/**' + pull_request: + paths: + - 'valkey/**' +name: "Tests Valkey" +jobs: + Tests: + runs-on: ubuntu-latest + strategy: + matrix: + go-version: + - 1.20.x + - 1.21.x + redis: + - '7.x' + steps: + - name: Fetch Repository + uses: actions/checkout@v4 + + - name: Generate TLS certs + run: ./.github/scripts/gen-test-certs.sh + + - name: Setup Valkey + uses: shogo82148/actions-setup-redis@v1 + with: + distribution: 'valkey' + redis-version: ${{ matrix.redis }} + auto-start: 'false' + redis-port: '6379' + redis-tls-port: '6380' + + - name: Run Valkey + run: | + valkey-server --tls-port 6380 --port 6379 \ + --tls-cert-file /home/runner/work/storage/storage/tls/valkey.crt \ + --tls-key-file /home/runner/work/storage/storage/tls/valkey.key \ + --tls-ca-cert-file /home/runner/work/storage/storage/tls/ca.crt & + + - name: Setup Valkey Cluster + uses: vishnudxb/redis-cluster@1.0.9 + with: + master1-port: 7000 + master2-port: 7001 + master3-port: 7002 + slave1-port: 7003 + slave2-port: 7004 + slave3-port: 7005 + sleep-duration: 10 + + - name: Install Go + uses: actions/setup-go@v5 + with: + go-version: '${{ matrix.go-version }}' + + - name: Run Test + run: cd ./valkey && go test ./... -v -race