Compare commits

..

No commits in common. "master" and "2023.8.23-stable.1207.cd2f1ba" have entirely different histories.

18 changed files with 12 additions and 559 deletions

View File

@ -1,44 +0,0 @@
{{ if .Versions -}}
{{ if .Unreleased.CommitGroups -}}
<a name="unreleased"></a>
## [Unreleased]
{{ range .Unreleased.CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
{{ end }}
{{ end -}}
{{ end -}}
{{ end -}}
{{ range .Versions }}
<a name="{{ .Tag.Name }}"></a>
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }}
{{ range .CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
{{ end }}
{{ else }}
_Nothing functionally significant._
{{ end -}}
{{- if .NoteGroups -}}
{{ range .NoteGroups -}}
### {{ .Title }}
{{ range .Notes }}
{{ .Body }}
{{ end }}
{{ end -}}
{{ end -}}
{{ end -}}
{{- if .Versions }}
[Unreleased]: {{ .Info.RepositoryURL }}/compare/{{ $latest := index .Versions 0 }}{{ $latest.Tag.Name }}...HEAD
{{ range .Versions -}}
{{ if .Tag.Previous -}}
[{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }}
{{ end -}}
{{ end -}}
{{ end -}}

View File

@ -1,33 +0,0 @@
style: github
template: CHANGELOG.tpl.md
info:
title: CHANGELOG
repository_url: https://forge.cadoles.com/Cadoles/mktools
options:
commits:
filters:
Type:
- feat
- fix
- perf
- refactor
- docs
commit_groups:
title_maps:
feat: Features
fix: Bug Fixes
perf: Performance Improvements
refactor: Code Refactoring
docs: Documentation
header:
pattern: "^(\\w*)(?:\\(([\\w\\$\\.\\-\\*\\s]*)\\))?\\:\\s(.*)$"
pattern_maps:
- Type
- Scope
- Subject
notes:
keywords:
- BREAKING CHANGE
issues:
prefix:
- '#'

1
.gitignore vendored
View File

@ -1 +0,0 @@
tools/

View File

@ -1,101 +0,0 @@
<a name="2025.1.8-stable.1054.7e5613b"></a>
## [2025.1.8-stable.1054.7e5613b] - 2025-01-08
### Bug Fixes
- typo
- **install:** correctly inject tools dir into gitignore
### Documentation
- **tutorials:** fix obsolete link
### Features
- **gitea:** add mkt-gitea-package task
- **gitea:** allow passing multiline body/attachments variables
- **version:** use branch name for short version channel if branch is not a common one
- **version:** automatically use ci defined branch name
- **version:** export variables for use in subshells
<a name="2023.8.25-stable.1621.af9c7e6"></a>
## [2023.8.25-stable.1621.af9c7e6] - 2023-08-25
_Nothing functionally significant._
<a name="2023.8.25-stable.1617.35625f6"></a>
## [2023.8.25-stable.1617.35625f6] - 2023-08-25
### Documentation
- add changelog link in readme
### Features
- **changelog:** display message in changelog when no commit is selected in release
<a name="2023.8.25-stable.1609.4d31268"></a>
## [2023.8.25-stable.1609.4d31268] - 2023-08-25
_Nothing functionally significant._
<a name="2023.8.25-stable.1606.be97e77"></a>
## [2023.8.25-stable.1606.be97e77] - 2023-08-25
### Bug Fixes
- **version:** normalize variable names
### Documentation
- describe project-version tasks
### Features
- **changelog:** allow override of command arguments
- **version:** permit branch name overwrite
<a name="2023.8.24-stable.1827.fa2dab5"></a>
## [2023.8.24-stable.1827.fa2dab5] - 2023-08-24
_Nothing functionally significant._
<a name="2023.8.24-stable.1827.1978504"></a>
## [2023.8.24-stable.1827.1978504] - 2023-08-24
### Bug Fixes
- **install:** add missing tasks in install script
### Features
- **changelog:** skip unreleased section if no commits are associated
- **version:** use commit timestamp to generate project version
<a name="2023.8.23-stable.1615.1b5c364"></a>
## [2023.8.23-stable.1615.1b5c364] - 2023-08-23
_Nothing functionally significant._
<a name="2023.8.23-stable.1615.0545812"></a>
## [2023.8.23-stable.1615.0545812] - 2023-08-23
### Bug Fixes
- **changelog:** add missing task dependency
### Documentation
- add tutorial to generate release with its changelog
### Features
- add changelog
- add mkt-changelog task
- **gitea-release:** automatically add tools directory to git ignored files
- **version:** use master and staging branches as aliases for testing and stable
<a name="2023.8.23-stable.1207.cd2f1ba"></a>
## 2023.8.23-stable.1207.cd2f1ba - 2023-08-21
### Features
- initial commit
[Unreleased]: https://forge.cadoles.com/Cadoles/mktools/compare/2025.1.8-stable.1054.7e5613b...HEAD
[2025.1.8-stable.1054.7e5613b]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.25-stable.1621.af9c7e6...2025.1.8-stable.1054.7e5613b
[2023.8.25-stable.1621.af9c7e6]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.25-stable.1617.35625f6...2023.8.25-stable.1621.af9c7e6
[2023.8.25-stable.1617.35625f6]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.25-stable.1609.4d31268...2023.8.25-stable.1617.35625f6
[2023.8.25-stable.1609.4d31268]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.25-stable.1606.be97e77...2023.8.25-stable.1609.4d31268
[2023.8.25-stable.1606.be97e77]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.24-stable.1827.fa2dab5...2023.8.25-stable.1606.be97e77
[2023.8.24-stable.1827.fa2dab5]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.24-stable.1827.1978504...2023.8.24-stable.1827.fa2dab5
[2023.8.24-stable.1827.1978504]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.23-stable.1615.1b5c364...2023.8.24-stable.1827.1978504
[2023.8.23-stable.1615.1b5c364]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.23-stable.1615.0545812...2023.8.23-stable.1615.1b5c364
[2023.8.23-stable.1615.0545812]: https://forge.cadoles.com/Cadoles/mktools/compare/2023.8.23-stable.1207.cd2f1ba...2023.8.23-stable.1615.0545812

6
Jenkinsfile vendored
View File

@ -1,6 +0,0 @@
@Library("cadoles") _
standardMakePipeline([
'buildTask': null,
'releaseTask': null
])

View File

@ -1,38 +0,0 @@
.PHONY: all
all: test build
.PHONY: test
test: tools/checkmake/bin/checkmake
tools/checkmake/bin/checkmake Makefile
MKT_GITEA_RELEASE_ORG ?= Cadoles
MKT_GITEA_RELEASE_PROJECT ?= mktools
.PHONY: release
release:
git tag $(MKT_PROJECT_VERSION) && git push --tags
$(MAKE) update-changelog
$(MAKE) MKT_GITEA_RELEASE_ATTACHMENTS="$(MKT_GITEA_RELEASE_ATTACHMENTS) CHANGELOG.md" \
MKT_GITEA_RELEASE_COMMIT_TARGET="$(MKT_PROJECT_VERSION)" \
mkt-gitea-release
.PHONY: clean
clean:
rm -rf tools
.PHONY: update-changelog
update-changelog:
$(MAKE) changelog
git add CHANGELOG.md
git commit -m "chore: update changelog"
git push
.PHONY: changelog
changelog:
git fetch --prune-tags
$(MAKE) \
MKT_GIT_CHGLOG_PROJECT_ORG=$(MKT_GITEA_RELEASE_ORG) \
MKT_GIT_CHGLOG_PROJECT_NAME=$(MKT_GITEA_RELEASE_PROJECT) \
mkt-changelog
include tasks/*.mk

View File

@ -16,7 +16,7 @@ Tâches [Make](https://fr.wikipedia.org/wiki/Make) génériques à utiliser de p
# Inclure les lignes suivantes: # Inclure les lignes suivantes:
.mktools: mktools:
rm -rf .mktools rm -rf .mktools
curl -q https://forge.cadoles.com/Cadoles/mktools/raw/branch/master/install.sh | $(SHELL) curl -q https://forge.cadoles.com/Cadoles/mktools/raw/branch/master/install.sh | $(SHELL)
@ -26,30 +26,14 @@ Tâches [Make](https://fr.wikipedia.org/wiki/Make) génériques à utiliser de p
2. Synchroniser le répertoire des tâches 2. Synchroniser le répertoire des tâches
```shell ```shell
make .mktools make mktools
``` ```
3. Vous pouvez commencer à utiliser les tâches Make partagées ! 3. Vous pouvez commencer à utiliser les tâches Make partagées !
### Utilisation standalone
1. Lancer l'image docker en créant un volume avec les fichers de votre projet dans /code
```
docker run -it -v $PWD:/code reg.cadoles.com/cadoles/mktools:1.0 mkt-project-version
```
## Tâches disponibles ## Tâches disponibles
|Tâches|Description|Documentation| |Tâches|Description|Documentation|
|------|-----------|-------------| |------|-----------|-------------|
|`make mkt-webdav-upload`|Téléverser un fichier dans un répertoire WebDAV (Nextcloud)|[Voir ./doc/tasks/webdav.md](./doc/tasks/webdav.md)| |`make mkt-webdav-upload`|Téléverser un fichier dans un répertoire WebDAV (Nextcloud)|[Voir ./doc/tasks/webdav.md](./doc/tasks/webdav.md)|
|`make mkt-gitea-release`|Créer une release sur un projet Gitea et téléverser des fichiers attachés|[Voir ./doc/tasks/gitea.md](./doc/tasks/gitea.md)| |`make mkt-gitea-release`|Créer une release sur un projet Gitea et téléverser des fichiers attachés|[Voir ./doc/tasks/gitea.md](./doc/tasks/gitea.md)|
|`make mkt-changelog`|Générer un fichier de `CHANGELOG.md` pour votre projet|[Voir ./doc/tasks/changelog.md](./doc/tasks/changelog.md)|
|`make mkt-project-version`|Générer et afficher la version courante du projet|[Voir ./doc/tasks/project-version.md](./doc/tasks/project-version.md)|
## Tutoriels
- [Créer une "release" avec son fichier `CHANGELOG.md`](./doc/tutorials/generate-release-with-changelog.md)
# Changelog
[Voir le fichier `CHANGELOG.md`](./CHANGELOG.md)

View File

@ -1,26 +0,0 @@
# Tâches Changelog
## `make mkt-changelog`
La tâche `mkt-changelog` permet de générer un fichier `CHANGELOG.md` avec l'outil [`git-chglog`](https://github.com/git-chglog/git-chglog) et de l'historique Git de votre projet.
L'usage de cette tâche a pour prérequis que vos messages de commit respectent la spécification ["Conventional Commit"](https://www.conventionalcommits.org/fr/v1.0.0/).
Par défaut voici [les types de commit](https://github.com/angular/angular/blob/22b96b9/CONTRIBUTING.md#type) référencés par le fichier généré:
- `feat`
- `fix`
- `perf`
- `refactor`
- `docs`
### Usage
Exemple d'utilisation de la tâche pour la génération du changelog du projet `https://forge.cadoles.com/MyOrg/MyProject` sur la forge:
```makefile
my-changelog:
$(MAKE) MKT_GIT_CHGLOG_PROJECT_ORG=MyOrg MKT_GIT_CHGLOG_PROJECT_NAME=MyProject mkt-changelog
```
> **Note** Assurez vous d'avoir créé un premier tag sur la branche en cours avant d'exécuter la tâche.

View File

@ -21,26 +21,5 @@ MKT_GITEA_RELEASE_BODY ?= My new release
# Exécution de la tâche mkt-gitea-release en passant la liste # Exécution de la tâche mkt-gitea-release en passant la liste
# des fichiers à téléverser avec la nouvelle version publiée # des fichiers à téléverser avec la nouvelle version publiée
my-release: my-release:
$(MAKE) MKT_GITEA_RELEASE_ATTACHMENTS="$$(find dist/* -type f -printf '%p ')" mkt-gitea-release $(MAKE) MKT_GITEA_RELEASE_ATTACHMENTS=$$(find dist/* -type f) mkt-gitea-release
``` ```
## `make mkt-gitea-package`
La tâche `mkt-gitea-package` permet de téléverser des paquets (voir https://docs.gitea.com/usage/packages/overview/) dans une organisation Gitea.
### Usage
Exemple d'utilisation de la tâche pour le téléversement de paquets `dist/mypackage.deb` sur le projet factice `my-org/my-project` sur https://forge.cadoles.com.
```makefile
# Organisation Gitea du projet
MKT_GITEA_PACKAGE_ORG ?= my-org
# Projet Gitea
MKT_GITEA_PACKAGE_PROJECT ?= my-project
# Exécution de la tâche mkt-gitea-package en passant le chemin du paquet à téléverser
upload-package:
$(MAKE) MKT_GITEA_PACKAGE_FILE="dist/mypackage.deb" mkt-gitea-package
```
Voir le script [`gitea-package.sh`](https://forge.cadoles.com/Cadoles/Jenkins/src/branch/master/resources/com/cadoles/gitea/gitea-package.sh) pour plus d'informations sur les variables d'environnement disponibles.

View File

@ -1,13 +0,0 @@
# Tâches "Project Version"
## Variables `MKT_PROJECT_VERSION` et `MKT_PROJECT_SHORT_VERSION`
Les variables `MKT_PROJECT_VERSION` et `MKT_PROJECT_SHORT_VERSION` sont automatiquement valuées à la version courante du projet tel que défini dans ["R14. Respecter le schéma d'identification des images publiées"](https://forge.cadoles.com/CadolesKube/KubeRules/wiki/Bonnes-pratiques-de-d%C3%A9veloppement-applicatif-en-vue-d%27un-d%C3%A9ploiement-sur-Kubernetes#r14-respecter-le-sch%C3%A9ma-d-identification-des-images-publi%C3%A9es).
## `make mkt-project-version`
La tâche `make mkt-project-version` affiche sur la sortie standard la version courante du projet.
## `make mkt-project-short-version`
La tâche `make mkt-project-short-version` affiche sur la sortie standard la version courte courante du projet.

View File

@ -1,34 +0,0 @@
# Générer une release pour son projet
Afin de générer une release pour votre projet ([exemples](https://forge.cadoles.com/Cadoles/mktools/releases)) ainsi que le fichier `CHANGELOG.md` associé à votre historique Git, vous pouvez intégrer à votre `Makefile` les tâches suivantes:
```makefile
MKT_GITEA_RELEASE_ORG ?= MyOrg # Propriétaire (organisation ou utilsateur) du projet Gitea
MKT_GITEA_RELEASE_PROJECT ?= MyProject # Nom du projet Gitea
.PHONY: release
release:
git tag $(MKT_PROJECT_VERSION) && git push --tags
$(MAKE) update-changelog
$(MAKE) MKT_GITEA_RELEASE_ATTACHMENTS="$(MKT_GITEA_RELEASE_ATTACHMENTS) CHANGELOG.md" \
MKT_GITEA_RELEASE_COMMIT_TARGET="$(MKT_PROJECT_VERSION)" \
mkt-gitea-release
.PHONY: update-changelog
update-changelog:
$(MAKE) changelog
git add CHANGELOG.md
git commit -m "chore: update changelog"
git push
.PHONY: changelog
changelog:
git fetch --prune-tags
$(MAKE) MKT_GIT_CHGLOG_PROJECT_ORG=$(MKT_GITEA_RELEASE_ORG) MKT_GIT_CHGLOG_PROJECT_NAME=$(MKT_GITEA_RELEASE_PROJECT) mkt-changelog
```
Pour générer une release sur votre projet, il vous suffira ensuite de faire:
```shell
make release
```

View File

@ -3,7 +3,7 @@
set -e set -e
TASKS_DIR=".mktools" TASKS_DIR=".mktools"
TASKS="${TASKS:-webdav gitea changelog version checkmake}" TASKS_FILES="webdav gitea"
main() { main() {
echo "Creating directory '$TASKS_DIR/'" echo "Creating directory '$TASKS_DIR/'"
@ -11,7 +11,7 @@ main() {
mkdir -p "$TASKS_DIR" mkdir -p "$TASKS_DIR"
# Download each referenced task files in $TASKS_DIR # Download each referenced task files in $TASKS_DIR
for f in $TASKS; do for f in $TASKS_FILES; do
echo "Downloading file '$TASKS_DIR/$f.mk'" echo "Downloading file '$TASKS_DIR/$f.mk'"
curl -qo "$TASKS_DIR/$f.mk" "https://forge.cadoles.com/Cadoles/mktools/raw/branch/master/tasks/$f.mk" curl -qo "$TASKS_DIR/$f.mk" "https://forge.cadoles.com/Cadoles/mktools/raw/branch/master/tasks/$f.mk"
done done
@ -20,7 +20,7 @@ main() {
if [ ! -f .gitignore ]; then if [ ! -f .gitignore ]; then
touch .gitignore touch .gitignore
fi fi
grep -qFx -- "$TASKS_DIR/" .gitignore || echo -e "$TASKS_DIR/" >> .gitignore grep -qF -- "$TASKS_DIR/" ".gitignore" || echo "$TASKS_DIR/" >> ".gitignore"
echo "Done" echo "Done"
} }

View File

@ -1,21 +0,0 @@
FROM alpine:3.21
RUN apk update --no-cache \
&& apk add --no-cache \
make \
curl \
bash \
git \
&& mkdir /mktools
COPY ./tasks/* mktools/
RUN touch /mktools/Makefile \
&& echo "-include /mktools/*.mk" >> /mktools/Makefile \
&& mkdir /code \
&& git config --global --add safe.directory /code
WORKDIR /code
COPY --chmod=550 ./misc/image/mktools /usr/local/bin/mktools
ENTRYPOINT [ "mktools" ]

View File

@ -1,2 +0,0 @@
#!/usr/bin/env sh
make -f /mktools/Makefile $1

View File

@ -1,112 +0,0 @@
MKT_GIT_CHGLOG_VERSION ?= 0.15.4
MKT_GIT_CHGLOG_DOWNLOAD_URL ?= https://github.com/git-chglog/git-chglog/releases/download/v$(MKT_GIT_CHGLOG_VERSION)/git-chglog_$(MKT_GIT_CHGLOG_VERSION)_linux_amd64.tar.gz
MKT_GIT_CHGLOG_ARGS ?= --output CHANGELOG.md
MKT_GIT_CHGLOG_PROJECT_ORG ?=
export MKT_GIT_CHGLOG_PROJECT_ORG
MKT_GIT_CHGLOG_PROJECT_NAME ?=
export MKT_GIT_CHGLOG_PROJECT_NAME
define _MKT_GIT_CHGLOG_CONFIG_SCRIPT =
mkdir -p .chglog
cat > .chglog/config.yml << EOF
style: github
template: CHANGELOG.tpl.md
info:
title: CHANGELOG
repository_url: https://forge.cadoles.com/${MKT_GIT_CHGLOG_PROJECT_ORG}/${MKT_GIT_CHGLOG_PROJECT_NAME}
options:
commits:
filters:
Type:
- feat
- fix
- perf
- refactor
- docs
commit_groups:
title_maps:
feat: Features
fix: Bug Fixes
perf: Performance Improvements
refactor: Code Refactoring
docs: Documentation
header:
pattern: "^(\\\\w*)(?:\\\\(([\\\\w\\\\$\\\\.\\\\-\\\\*\\\\s]*)\\\\))?\\\\:\\\\s(.*)$"
pattern_maps:
- Type
- Scope
- Subject
notes:
keywords:
- BREAKING CHANGE
issues:
prefix:
- '#'
EOF
endef
export MKT_GIT_CHGLOG_CONFIG_SCRIPT = $(value _MKT_GIT_CHGLOG_CONFIG_SCRIPT)
define _MKT_GIT_CHGLOG_TEMPLATE_SCRIPT =
mkdir -p .chglog
cat > .chglog/CHANGELOG.tpl.md << EOF
{{ if .Versions -}}
{{ if .Unreleased.CommitGroups -}}
<a name="unreleased"></a>
## [Unreleased]
{{ range .Unreleased.CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
{{ end }}
{{ end -}}
{{ end -}}
{{ end -}}
{{ range .Versions }}
<a name="{{ .Tag.Name }}"></a>
## {{ if .Tag.Previous }}[{{ .Tag.Name }}]{{ else }}{{ .Tag.Name }}{{ end }} - {{ datetime "2006-01-02" .Tag.Date }}
{{ range .CommitGroups -}}
### {{ .Title }}
{{ range .Commits -}}
- {{ if .Scope }}**{{ .Scope }}:** {{ end }}{{ .Subject }}
{{ end }}
{{ else }}
_Nothing functionally significant._
{{ end -}}
{{- if .NoteGroups -}}
{{ range .NoteGroups -}}
### {{ .Title }}
{{ range .Notes }}
{{ .Body }}
{{ end }}
{{ end -}}
{{ end -}}
{{ end -}}
{{- if .Versions }}
[Unreleased]: {{ .Info.RepositoryURL }}/compare/{{ \$latest := index .Versions 0 }}{{ \$latest.Tag.Name }}...HEAD
{{ range .Versions -}}
{{ if .Tag.Previous -}}
[{{ .Tag.Name }}]: {{ $.Info.RepositoryURL }}/compare/{{ .Tag.Previous.Name }}...{{ .Tag.Name }}
{{ end -}}
{{ end -}}
{{ end -}}
EOF
endef
export MKT_GIT_CHGLOG_TEMPLATE_SCRIPT = $(value _MKT_GIT_CHGLOG_TEMPLATE_SCRIPT)
mkt-changelog: tools/git-chglog/bin/git-chglog .chglog/config.yml .chglog/CHANGELOG.tpl.md
tools/git-chglog/bin/git-chglog $(MKT_GIT_CHGLOG_ARGS)
.chglog/config.yml:
@eval "$$MKT_GIT_CHGLOG_CONFIG_SCRIPT"
.chglog/CHANGELOG.tpl.md:
@eval "$$MKT_GIT_CHGLOG_TEMPLATE_SCRIPT"
tools/git-chglog/bin/git-chglog:
mkdir -p tools/git-chglog/bin
grep -qF -- "tools/" ".gitignore" 2>/dev/null || echo "tools/" >> ".gitignore"
( cd tools/git-chglog/bin && curl -sL "$(MKT_GIT_CHGLOG_DOWNLOAD_URL)" | tar -xz git-chglog )

View File

@ -1,8 +0,0 @@
MKT_CHECKMAKE_VERSION ?= 0.2.2
MKT_CHECKMAKE_URL ?= https://github.com/mrtazz/checkmake/releases/download/$(MKT_CHECKMAKE_VERSION)/checkmake-$(MKT_CHECKMAKE_VERSION).linux.amd64
tools/checkmake/bin/checkmake:
mkdir -p tools/checkmake/bin
grep -qF -- "tools/" ".gitignore" 2>/dev/null || echo "tools/" >> ".gitignore"
curl -sL -o tools/checkmake/bin/checkmake "$(MKT_CHECKMAKE_URL)"
chmod +x tools/checkmake/bin/checkmake

View File

@ -1,7 +1,7 @@
MKT_GITEA_RELEASE_PROJECT ?= MKT_GITEA_RELEASE_PROJECT ?=
MKT_GITEA_RELEASE_ORG ?= MKT_GITEA_RELEASE_ORG ?=
MKT_GITEA_RELEASE_BASE_URL ?= https://forge.cadoles.com MKT_GITEA_RELEASE_BASE_URL ?= https://forge.cadoles.com
MKT_GITEA_RELEASE_VERSION ?= $(MKT_PROJECT_VERSION) MKT_GITEA_RELEASE_VERSION ?=
MKT_GITEA_RELEASE_COMMIT_TARGET ?= $(shell git rev-parse HEAD) MKT_GITEA_RELEASE_COMMIT_TARGET ?= $(shell git rev-parse HEAD)
MKT_GITEA_RELEASE_IS_DRAFT ?= false MKT_GITEA_RELEASE_IS_DRAFT ?= false
MKT_GITEA_RELEASE_BODY ?= MKT_GITEA_RELEASE_BODY ?=
@ -9,16 +9,6 @@ MKT_GITEA_RELEASE_ATTACHMENTS ?=
MKT_GITEA_RELEASE_USERNAME ?= MKT_GITEA_RELEASE_USERNAME ?=
MKT_GITEA_RELEASE_PASSWORD ?= MKT_GITEA_RELEASE_PASSWORD ?=
define GITEA_RELEASE_BODY
$(MKT_GITEA_RELEASE_BODY)
endef
export GITEA_RELEASE_BODY
define GITEA_RELEASE_ATTACHMENTS
$(MKT_GITEA_RELEASE_ATTACHMENTS)
endef
export GITEA_RELEASE_ATTACHMENTS
mkt-gitea-release: tools/gitea-release/bin/gitea-release.sh mkt-gitea-release: tools/gitea-release/bin/gitea-release.sh
GITEA_RELEASE_PROJECT="$(MKT_GITEA_RELEASE_PROJECT)" \ GITEA_RELEASE_PROJECT="$(MKT_GITEA_RELEASE_PROJECT)" \
GITEA_RELEASE_ORG="$(MKT_GITEA_RELEASE_ORG)" \ GITEA_RELEASE_ORG="$(MKT_GITEA_RELEASE_ORG)" \
@ -27,6 +17,8 @@ mkt-gitea-release: tools/gitea-release/bin/gitea-release.sh
GITEA_RELEASE_NAME="$(MKT_GITEA_RELEASE_VERSION)" \ GITEA_RELEASE_NAME="$(MKT_GITEA_RELEASE_VERSION)" \
GITEA_RELEASE_COMMITISH_TARGET="$(MKT_GITEA_RELEASE_COMMIT_TARGET)" \ GITEA_RELEASE_COMMITISH_TARGET="$(MKT_GITEA_RELEASE_COMMIT_TARGET)" \
GITEA_RELEASE_IS_DRAFT="$(MKT_GITEA_RELEASE_IS_DRAFT)" \ GITEA_RELEASE_IS_DRAFT="$(MKT_GITEA_RELEASE_IS_DRAFT)" \
GITEA_RELEASE_BODY="$(MKT_GITEA_RELEASE_BODY)" \
GITEA_RELEASE_ATTACHMENTS="$(MKT_GITEA_RELEASE_ATTACHMENTS)" \
GITEA_RELEASE_USERNAME="$(MKT_GITEA_RELEASE_USERNAME)" \ GITEA_RELEASE_USERNAME="$(MKT_GITEA_RELEASE_USERNAME)" \
GITEA_RELEASE_PASSWORD="$(MKT_GITEA_RELEASE_PASSWORD)" \ GITEA_RELEASE_PASSWORD="$(MKT_GITEA_RELEASE_PASSWORD)" \
tools/gitea-release/bin/gitea-release.sh tools/gitea-release/bin/gitea-release.sh
@ -35,26 +27,3 @@ tools/gitea-release/bin/gitea-release.sh:
mkdir -p tools/gitea-release/bin mkdir -p tools/gitea-release/bin
curl --output tools/gitea-release/bin/gitea-release.sh https://forge.cadoles.com/Cadoles/Jenkins/raw/branch/master/resources/com/cadoles/gitea/gitea-release.sh curl --output tools/gitea-release/bin/gitea-release.sh https://forge.cadoles.com/Cadoles/Jenkins/raw/branch/master/resources/com/cadoles/gitea/gitea-release.sh
chmod +x tools/gitea-release/bin/gitea-release.sh chmod +x tools/gitea-release/bin/gitea-release.sh
grep -qF -- "tools/" ".gitignore" 2>/dev/null || echo "tools/" >> ".gitignore"
MKT_GITEA_PACKAGE_PROJECT ?=
MKT_GITEA_PACKAGE_ORG ?=
MKT_GITEA_PACKAGE_BASE_URL ?= https://forge.cadoles.com
MKT_GITEA_PACKAGE_USERNAME ?=
MKT_GITEA_PACKAGE_USERNAME ?=
mkt-gitea-package: tools/gitea-package/bin/gitea-package.sh
GITEA_PACKAGE_PROJECT="$(MKT_GITEA_PACKAGE_PROJECT)" \
GITEA_PACKAGE_ORG="$(MKT_GITEA_PACKAGE_ORG)" \
GITEA_PACKAGE_BASE_URL="$(MKT_GITEA_PACKAGE_BASE_URL)" \
GITEA_PACKAGE_FILE="$(MKT_GITEA_PACKAGE_FILE)" \
GITEA_PACKAGE_USERNAME="$(MKT_GITEA_PACKAGE_USERNAME)" \
GITEA_PACKAGE_PASSWORD="$(MKT_GITEA_PACKAGE_PASSWORD)" \
tools/gitea-package/bin/gitea-package.sh
tools/gitea-package/bin/gitea-package.sh:
mkdir -p tools/gitea-package/bin
curl --output tools/gitea-package/bin/gitea-package.sh https://forge.cadoles.com/Cadoles/Jenkins/raw/branch/master/resources/com/cadoles/gitea/gitea-package.sh
chmod +x tools/gitea-package/bin/gitea-package.sh
grep -qF -- "tools/" ".gitignore" 2>/dev/null || echo "tools/" >> ".gitignore"

View File

@ -1,40 +0,0 @@
MKT_PROJECT_VERSION_TIMEZONE ?= Europe/Paris
MKT_PROJECT_VERSION_BRANCH_NAME ?= $(if $(CI), $(BRANCH_NAME), $(shell git rev-parse --abbrev-ref HEAD))
MKT_PROJECT_VERSION_CLEANED_BRANCH_NAME ?= $(shell echo $(MKT_PROJECT_VERSION_BRANCH_NAME) | tr '[:upper:]' '[:lower:]' | sed -e 's/[-_ ]//g')
ifeq ($(MKT_PROJECT_VERSION_CLEANED_BRANCH_NAME),master)
MKT_PROJECT_VERSION_CHANNEL = stable
else ifeq ($(MKT_PROJECT_VERSION_CLEANED_BRANCH_NAME),staging)
MKT_PROJECT_VERSION_CHANNEL = testing
else
MKT_PROJECT_VERSION_CHANNEL = $(MKT_PROJECT_VERSION_CLEANED_BRANCH_NAME)
endif
ifeq ($(MKT_PROJECT_VERSION_CHANNEL),develop)
MKT_PROJECT_SHORT_VERSION_CHANNEL ?= dev
else ifneq ($(filter $(MKT_PROJECT_VERSION_CHANNEL),testing staging),)
MKT_PROJECT_SHORT_VERSION_CHANNEL ?= tst
else ifneq ($(filter $(MKT_PROJECT_VERSION_CHANNEL),stable master),)
MKT_PROJECT_SHORT_VERSION_CHANNEL ?= stb
else
MKT_PROJECT_SHORT_VERSION_CHANNEL ?= $(MKT_PROJECT_VERSION_CHANNEL)
endif
MKT_PROJECT_VERSION_COMMIT_TIMESTAMP ?= $(shell git show -s --format=%ct)
MKT_PROJECT_VERSION_DATE ?= $(shell TZ=$(MKT_PROJECT_VERSION_TIMEZONE) date -d '@$(MKT_PROJECT_VERSION_COMMIT_TIMESTAMP)' +%Y.%-m.%-d)
MKT_PROJECT_VERSION_TIMESTAMP ?= $(shell TZ=$(MKT_PROJECT_VERSION_TIMEZONE) date -d '@$(MKT_PROJECT_VERSION_COMMIT_TIMESTAMP)' +%-H%M)
MKT_PROJECT_VERSION := $(MKT_PROJECT_VERSION_DATE)-$(MKT_PROJECT_VERSION_CHANNEL).$(MKT_PROJECT_VERSION_TIMESTAMP).$(shell git rev-parse --short HEAD)
MKT_PROJECT_SHORT_VERSION := $(MKT_PROJECT_VERSION_DATE)-$(MKT_PROJECT_SHORT_VERSION_CHANNEL).$(MKT_PROJECT_VERSION_TIMESTAMP)
export MKT_PROJECT_VERSION
export MKT_PROJECT_SHORT_VERSION
.PHONY: mkt-project-version
mkt-project-version:
@echo $(MKT_PROJECT_VERSION)
.PHONY: mkt-project-short-version
mkt-project-short-version:
@echo $(MKT_PROJECT_SHORT_VERSION)