Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
84 changes: 5 additions & 79 deletions .github/workflows/createRelease.yaml
Original file line number Diff line number Diff line change
@@ -1,82 +1,8 @@
##############################
# Workflow: Create Release
# Version: 0.0.2
##############################

name: Create Release

name: Workflow caller - create release
on:
workflow_dispatch:
inputs:
version:
description: 'Version number (e.g., v1.0.0). Leave blank to use the latest version from CHANGELOG.md.'
required: false
pull_request:
types:
- closed

permissions:
contents: write

types: [closed]
jobs:
create-release:
runs-on: ubuntu-latest

steps:
- name: Checkout repository
uses: actions/checkout@v3

- name: Determine Version
id: determine_version
run: |
if [ -n "${{ github.event.inputs.version }}" ]; then
VERSION="${{ github.event.inputs.version }}"
else
if [ -f CHANGELOG.md ]; then
VERSION=$(grep -oP '^## \[\K[^]]+' CHANGELOG.md | head -n 1)
if [ -z "$VERSION" ]; then
echo "No versions found in CHANGELOG.md."
exit 1
fi
else
echo "CHANGELOG.md not found. Cannot determine version."
exit 1
fi
fi
[[ "$VERSION" != v* ]] && VERSION="v$VERSION"
echo "VERSION=$VERSION" >> $GITHUB_ENV
echo "VERSION_NO_V=${VERSION#v}" >> $GITHUB_ENV

- name: Extract Release Notes from CHANGELOG.md
id: extract_notes
if: ${{ github.event.inputs.version == '' }}
run: |
if [ -f CHANGELOG.md ]; then
awk '/## \['"${VERSION_NO_V}"'\]/{flag=1; next} /## \[/{flag=0} flag' CHANGELOG.md > release_notes.txt
if [ ! -s release_notes.txt ]; then
echo "No release notes found for version ${VERSION_NO_V} in CHANGELOG.md."
exit 1
fi
else
echo "CHANGELOG.md not found in the repository."
exit 1
fi
echo "RELEASE_NOTES<<EOF" >> $GITHUB_ENV
cat release_notes.txt >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV

- name: Default Release Notes
if: ${{ github.event.inputs.version != '' }}
run: |
echo "RELEASE_NOTES=Release notes not provided for version ${VERSION}." >> $GITHUB_ENV

- name: Debug Release Notes
run: |
echo "Extracted Release Notes:"
echo "${RELEASE_NOTES}"

- name: Create GitHub Release
run: |
gh release create "${VERSION}" --title "${VERSION}" --notes-file release_notes.txt
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
verify-changelog:
if: github.event.pull_request.merged == true
uses: Tools4everBV/.github/.github/workflows/createRelease.yaml@main
33 changes: 3 additions & 30 deletions .github/workflows/verifyChangelog.yaml
Original file line number Diff line number Diff line change
@@ -1,35 +1,8 @@
####################################
# Workflow: Verify CHANGELOG Updated
# Version: 0.0.1
####################################

name: Verify CHANGELOG Updated

name: Workflow caller - verify changelog updated
on:
pull_request:
types: [opened, synchronize]

jobs:
check-changelog:
runs-on: ubuntu-latest

steps:
- name: Checkout Repository
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Ensure CHANGELOG.md is updated
run: |
# Fetch the base branch to compare against
git fetch origin ${{ github.base_ref }} --depth=1

# Compare changes between the current branch and the base branch
CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }})

# Check if CHANGELOG.md is included in the list of changed files
if echo "$CHANGED_FILES" | grep -q 'CHANGELOG.md'; then
echo "CHANGELOG.md is updated."
else
echo "ERROR: Please update the CHANGELOG.md file with your changes." && exit 1
fi
verify-changelog:
uses: Tools4everBV/.github/.github/workflows/verifyChangelog.yaml@main
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@

All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com), and this project adheres to [Semantic Versioning](https://semver.org).

## [3.5.1] - 02-07-2026

Updated README

## [3.5.0] - 02-03-2026

List of changes:
Expand Down
19 changes: 11 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,14 +35,14 @@
## Introduction

Supported features:
| Feature | Supported | Actions | Remarks |
| ----------------------------------------- | --------- | --------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| **Account Lifecycle** | ✅ | Create, Update, Enable, Disable, Delete | |
| **Permissions** | ✅ | Retrieve, Grant, Revoke | Creating changes and incidents |
| **Resources** | ✅ | - | |
| **Entitlement Import: Accounts** | ✅ | - | |
| **Entitlement Import: Permissions** | ❌ | | |
| **Governance Reconciliation Resolutions** | ✅ | Disable, Delete, Revoke | Delete is treated as a disable action with the option to update values. Please adjust the configuration accordingly in the delete script. Revoke only avalible for the software assignments permission |
| Feature | Supported | Actions | Remarks |
| ----------------------------------------- | --------- | --------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- |
| **Account Lifecycle** | ✅ | Create, Update, Enable, Disable, Delete | |
| **Permissions** | ✅ | Retrieve, Grant, Revoke | Creating changes and incidents |
| **Resources** | ✅ | - | |
| **Entitlement Import: Accounts** | ✅ | - | |
| **Entitlement Import: Permissions** | ❌ | | |
| **Governance Reconciliation Resolutions** | ✅ | Disable, Delete | Delete is treated as a disable action with the option to update values. Please adjust the configuration accordingly in the delete script. |

## Getting started

Expand All @@ -57,6 +57,9 @@ https://raw.githubusercontent.com/Tools4everBV/HelloID-Conn-Prov-Target-Topdesk/
> [!IMPORTANT]
> <b> When changes or incidents are in scope, a helloID agent on-premise is required. For cloud only changes or incidents use the [HelloID Topdesk notification system](https://github.com/Tools4everBV/HelloID-Conn-Prov-Notification-Topdesk) </b>

> [!NOTE]
> For archiving a person with a linked operator the rights `Operator` `Read` and `Archive` are required.

an archiving reason that is configured in Topdesk.
Credentials with the rights listed below.

Expand Down
Loading