mirror of
https://github.com/apricote/releaser-pleaser.git
synced 2026-02-10 19:57:03 +00:00
Compare commits
No commits in common. "dc1903c4b4a839a2f60a141ed222e2819901ec44" and "ee83cec0494a3e756bdac5f769f6a910f66e2546" have entirely different histories.
dc1903c4b4
...
ee83cec049
9 changed files with 4 additions and 175 deletions
28
.github/workflows/mirror.yaml
vendored
28
.github/workflows/mirror.yaml
vendored
|
|
@ -1,28 +0,0 @@
|
||||||
name: mirror
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches: [main]
|
|
||||||
tags: ["*"]
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
gitlab-com:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
env:
|
|
||||||
REMOTE: mirror
|
|
||||||
steps:
|
|
||||||
- name: Checkout
|
|
||||||
uses: actions/checkout@v4
|
|
||||||
with:
|
|
||||||
# Need all to fetch all tags so we can push them
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Add Remote
|
|
||||||
env:
|
|
||||||
CLONE_URL: "https://releaser-pleaser:${{ secrets.GITLAB_COM_PUSH_TOKEN }}@gitlab.com/apricote/releaser-pleaser.git"
|
|
||||||
run: git remote add $REMOTE $CLONE_URL
|
|
||||||
|
|
||||||
- name: Push Branches
|
|
||||||
run: git push --force --all --verbose $REMOTE
|
|
||||||
|
|
||||||
- name: Push Tags
|
|
||||||
run: git push --force --tags --verbose $REMOTE
|
|
||||||
1
.github/workflows/releaser-pleaser.yaml
vendored
1
.github/workflows/releaser-pleaser.yaml
vendored
|
|
@ -43,4 +43,3 @@ jobs:
|
||||||
token: ${{ secrets.RELEASER_PLEASER_TOKEN }}
|
token: ${{ secrets.RELEASER_PLEASER_TOKEN }}
|
||||||
extra-files: |
|
extra-files: |
|
||||||
action.yml
|
action.yml
|
||||||
templates/run.yml
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +0,0 @@
|
||||||
stages: [release]
|
|
||||||
|
|
||||||
# For the GitLab CI/CD component to be usable, it needs to be published in
|
|
||||||
# the CI/CD catalog. This happens on new releases.
|
|
||||||
# As the primary tagging happens on GitHub, we only react to pushed tags
|
|
||||||
# and create a corresponding GitLab Release.
|
|
||||||
create-release:
|
|
||||||
stage: release
|
|
||||||
image: registry.gitlab.com/gitlab-org/release-cli:latest
|
|
||||||
script: echo "Creating release $CI_COMMIT_TAG"
|
|
||||||
rules:
|
|
||||||
- if: $CI_COMMIT_TAG
|
|
||||||
release:
|
|
||||||
tag_name: "$CI_COMMIT_TAG"
|
|
||||||
description: "$CI_COMMIT_TAG_MESSAGE"
|
|
||||||
5
.ko.yaml
5
.ko.yaml
|
|
@ -1,6 +1,3 @@
|
||||||
defaultPlatforms:
|
defaultPlatforms:
|
||||||
- linux/arm64
|
- linux/arm64
|
||||||
- linux/amd64
|
- linux/amd64
|
||||||
|
|
||||||
# Need a shell for gitlab-ci
|
|
||||||
defaultBaseImage: cgr.dev/chainguard/busybox
|
|
||||||
23
CHANGELOG.md
23
CHANGELOG.md
|
|
@ -1,28 +1,5 @@
|
||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
## [v0.4.0-beta.1](https://github.com/apricote/releaser-pleaser/releases/tag/v0.4.0-beta.1)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- add shell to container image (#59)
|
|
||||||
- **gitlab**: add CI/CD component (#55)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- multiple extra-files are not evaluated properly (#61)
|
|
||||||
|
|
||||||
## [v0.4.0-beta.0](https://github.com/apricote/releaser-pleaser/releases/tag/v0.4.0-beta.0)
|
|
||||||
|
|
||||||
### Features
|
|
||||||
|
|
||||||
- add support for GitLab repositories (#49)
|
|
||||||
|
|
||||||
### Bug Fixes
|
|
||||||
|
|
||||||
- **parser**: continue on unparsable commit message (#48)
|
|
||||||
- **cli**: command name in help output (#52)
|
|
||||||
- **parser**: invalid handling of empty lines (#53)
|
|
||||||
|
|
||||||
## [v0.3.0](https://github.com/apricote/releaser-pleaser/releases/tag/v0.3.0)
|
## [v0.3.0](https://github.com/apricote/releaser-pleaser/releases/tag/v0.3.0)
|
||||||
|
|
||||||
### :sparkles: Highlights
|
### :sparkles: Highlights
|
||||||
|
|
|
||||||
|
|
@ -21,12 +21,12 @@ inputs:
|
||||||
outputs: {}
|
outputs: {}
|
||||||
runs:
|
runs:
|
||||||
using: 'docker'
|
using: 'docker'
|
||||||
image: ghcr.io/apricote/releaser-pleaser:v0.4.0-beta.1 # x-releaser-pleaser-version
|
image: ghcr.io/apricote/releaser-pleaser:v0.3.0 # x-releaser-pleaser-version
|
||||||
args:
|
args:
|
||||||
- run
|
- run
|
||||||
- --forge=github
|
- --forge=github
|
||||||
- --branch=${{ inputs.branch }}
|
- --branch=${{ inputs.branch }}
|
||||||
- --extra-files="${{ inputs.extra-files }}"
|
- --extra-files=${{ inputs.extra-files }}
|
||||||
env:
|
env:
|
||||||
GITHUB_TOKEN: "${{ inputs.token }}"
|
GITHUB_TOKEN: ${{ inputs.token }}
|
||||||
GITHUB_USER: "oauth2"
|
GITHUB_USER: "oauth2"
|
||||||
|
|
|
||||||
|
|
@ -95,12 +95,6 @@ func run(cmd *cobra.Command, _ []string) error {
|
||||||
}
|
}
|
||||||
|
|
||||||
func parseExtraFiles(input string) []string {
|
func parseExtraFiles(input string) []string {
|
||||||
// We quote the arg to avoid issues with the expected newlines in the value.
|
|
||||||
// Need to remove those quotes before parsing the data
|
|
||||||
input = strings.Trim(input, `"`)
|
|
||||||
// In some situations we get a "\n" sequence, where we actually expect new lines,
|
|
||||||
// replace the two characters with an actual new line
|
|
||||||
input = strings.ReplaceAll(input, `\n`, "\n")
|
|
||||||
lines := strings.Split(input, "\n")
|
lines := strings.Split(input, "\n")
|
||||||
|
|
||||||
extraFiles := make([]string, 0, len(lines))
|
extraFiles := make([]string, 0, len(lines))
|
||||||
|
|
|
||||||
|
|
@ -1,59 +0,0 @@
|
||||||
package cmd
|
|
||||||
|
|
||||||
import (
|
|
||||||
"testing"
|
|
||||||
|
|
||||||
"github.com/stretchr/testify/assert"
|
|
||||||
)
|
|
||||||
|
|
||||||
func Test_parseExtraFiles(t *testing.T) {
|
|
||||||
tests := []struct {
|
|
||||||
name string
|
|
||||||
input string
|
|
||||||
want []string
|
|
||||||
}{
|
|
||||||
{
|
|
||||||
name: "empty",
|
|
||||||
input: ``,
|
|
||||||
want: []string{},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "empty quoted",
|
|
||||||
input: `""`,
|
|
||||||
want: []string{},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "single",
|
|
||||||
input: `foo.txt`,
|
|
||||||
want: []string{"foo.txt"},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "single quoted",
|
|
||||||
input: `"foo.txt"`,
|
|
||||||
want: []string{"foo.txt"},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "multiple",
|
|
||||||
input: `foo.txt
|
|
||||||
dir/Chart.yaml`,
|
|
||||||
want: []string{"foo.txt", "dir/Chart.yaml"},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "multiple quoted",
|
|
||||||
input: `"foo.txt
|
|
||||||
dir/Chart.yaml"`,
|
|
||||||
want: []string{"foo.txt", "dir/Chart.yaml"},
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "multiple with broken new lines",
|
|
||||||
input: `"action.yml\ntemplates/run.yml\n"`,
|
|
||||||
want: []string{"action.yml", "templates/run.yml"},
|
|
||||||
},
|
|
||||||
}
|
|
||||||
for _, tt := range tests {
|
|
||||||
t.Run(tt.name, func(t *testing.T) {
|
|
||||||
got := parseExtraFiles(tt.input)
|
|
||||||
assert.Equal(t, tt.want, got)
|
|
||||||
})
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
@ -1,36 +0,0 @@
|
||||||
spec:
|
|
||||||
inputs:
|
|
||||||
# Remember to update docs/reference/gitlab-ci-component.md
|
|
||||||
branch:
|
|
||||||
default: main
|
|
||||||
description: "This branch is used as the target for releases."
|
|
||||||
|
|
||||||
token:
|
|
||||||
description: "GitLab token for creating and updating release MRs."
|
|
||||||
|
|
||||||
extra-files:
|
|
||||||
description: 'List of files that are scanned for version references.'
|
|
||||||
default: ""
|
|
||||||
|
|
||||||
stage:
|
|
||||||
default: build
|
|
||||||
description: 'Defines the build stage'
|
|
||||||
# Remember to update docs/reference/gitlab-ci-component.md
|
|
||||||
---
|
|
||||||
|
|
||||||
releaser-pleaser:
|
|
||||||
stage: $[[ inputs.stage ]]
|
|
||||||
rules:
|
|
||||||
# There is no way to run a pipeline when the MR description is updated :(
|
|
||||||
- if: $CI_COMMIT_BRANCH == "$[[ inputs.branch ]]"
|
|
||||||
image:
|
|
||||||
name: ghcr.io/apricote/releaser-pleaser:v0.4.0-beta.1 # x-releaser-pleaser-version
|
|
||||||
entrypoint: [""]
|
|
||||||
variables:
|
|
||||||
GITLAB_TOKEN: $[[ inputs.token ]]
|
|
||||||
script:
|
|
||||||
- |
|
|
||||||
rp run \
|
|
||||||
--forge=gitlab \
|
|
||||||
--branch=$[[ inputs.branch ]] \
|
|
||||||
--extra-files="$[[ inputs.extra-files ]]"
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue