# Alm Processing

> Alm Processing is an Agent Skill for devops & security published in the langgraph4j/langgraph4j repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

Use this to perform operations on the langgraph4j project. 1) create a new project release 2) move to next dev release

- Skill name: `alm-processing`
- Category: [DevOps & Security](https://www.openparable.com/skill/devops-security/1)
- Source: https://github.com/langgraph4j/langgraph4j/blob/HEAD/.agent/skills/alm-processing/SKILL.md
- Repository: langgraph4j/langgraph4j (1,816 GitHub stars when collected)

## SKILL.md

# create a new project release

In this project we follow the "git flow" branching strategy. 
To create a new release we need to start from `develop` branch and accomplish the workflow outlined below:

## 1. Create a ad-hoc release branch.
Starting from `develop` branch and runs the command `git flow release start "<version>"` that will create a branch from `develop` named `release\<version>`.

## 2. Update project release
After created successfully the release branch we must update the java project release runs the command `mvn versions:set -DnewVersion=<version>`. 
After the command successfully completed we must to confirm changes in `pom.xml` files runs command `mvn version:commit`

## 3. commit the release update
After update java project release we must commit to git runs commands
```
git add . ; git commit -m'build: bump to next version <version>'
```
## 4. wait for confirmation
At this point pause execution and ask to the user when ready to close the release, When he confirms proceed to next steps

## 5. close release
To close the release runs `git flow release finish "<version>" -m"new release <version>"` that will merge the branch `release/<version>` to both `main` and `develop` ones 

## 6. update change log
To update change log follow the steps below :
### 6.1 create an hotfix branch to work on changelog
exec command `git flow hotfix start changelog`

### 6.2 generate CHANGELOG.md
exec command `git-changelog-command-line -of CHANGELOG.md`

### 6.3 commit changes
exec command `git commit -m'docs: update changelog' -a`

### 6.4 finish the hotfix without create tag
exec command `git flow hotfix finish changelog -n -m"changelog hotfix merge"`

---

Source: https://www.openparable.com/skill/devops-security/alm-processing (OpenParable). Cite the canonical URL above.
