Skip to content

Commit d1cf312

Browse files
authored
Merge pull request #6933 from bndtools/docs/gen-2025-11-12-134432
docs: update generated docs
2 parents 4c8f6e9 + 11a8138 commit d1cf312

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

docs/_instructions/maven_release.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,7 @@ Though this instruction is not specific for a plugin, it was developed in conjun
4040
( ';path=' ( 'JAR' | PATH ) )?
4141
sign ::= 'sign'
4242
( ';passphrase=' VALUE )?
43+
( ';keyname=' VALUE )?
4344

4445
If `sources` or `javadoc` has the attribute `force=true`, either one will be release to the maven repository even if no `releaseUrl` or `snapshotUrl` is set or `maven-release=local`.
4546

@@ -65,13 +66,17 @@ For example:
6566

6667
# Signing
6768

68-
If the instruction contains the sign attribute and release build is detected the repository tries to apply [gnupg](https://gnupg.org/) via a command process to create `.asc` files for all deployed artifacts. This requires a Version of [gnupg](https://gnupg.org/) installed on your build system. By default it uses the `gpg` command. If the `passphrase` is configured, it will hand it over to the command as standard input. The command will be constructed as follows: `gpg --batch --passphrase-fd 0 --output <filetosign>.asc --detach-sign --armor <filetosign>`. Some newer gnupg versions will ignore the passphrase via standard input for the first try and ask again with password screen. This will crash the process. Have a look [here](https://stackoverflow.com/questions/19895122/how-to-use-gnupgs-passphrase-fd-argument) to teach gnupg otherwise. The command can be exchanged or amended with additional options by defining a property named `gpg` in your workspace (e.g. `build.bnd` or somewhere in the ext directory).
69+
If the instruction contains the sign attribute and release build is detected the repository tries to apply [gnupg](https://gnupg.org/) via a command process to create `.asc` files for all deployed artifacts. This requires a Version of [gnupg](https://gnupg.org/) installed on your build system. By default it uses the `gpg` command. If the `passphrase` is configured, it will hand it over to the command as standard input, same for the `keyname`.
70+
71+
The command will be constructed as follows:
72+
73+
`gpg --batch --local-user <keyname> --passphrase-fd 0 --output <filetosign>.asc --detach-sign --armor <filetosign>`. Some newer gnupg versions will ignore the passphrase via standard input for the first try and ask again with password screen. This will crash the process. Have a look [here](https://stackoverflow.com/questions/19895122/how-to-use-gnupgs-passphrase-fd-argument) to teach gnupg otherwise. The command can be exchanged or amended with additional options by defining a property named `gpg` in your workspace (e.g. `build.bnd` or somewhere in the ext directory).
6974

7075
Example config could look like:
7176

7277
```
7378
# use the env macro to avoid to set the passphrase somehwere in your project
74-
-maven-release: pom,sign;passphrase=${env;GNUPG_PASSPHRASE}
79+
-maven-release: pom,sign;keyname=${env;GNUPG_KEYNAME}, passphrase=${env;GNUPG_PASSPHRASE}
7580
gpg: gpg --homedir /mnt/n/tmp/gpg/.gnupg --pinentry-mode loopback
7681
```
7782

0 commit comments

Comments
 (0)