Compare commits

..

3 Commits

Author SHA1 Message Date
Rui Lopes d78ce6dc39 upgrade to nexus 3.84.0-03 2025-09-10 18:27:17 +00:00
Rui Lopes 88acd8c3c0 update the referenced urls 2025-09-10 18:27:17 +00:00
Rui Lopes 3adf24fe46 upgrade dependencies 2025-09-10 18:27:17 +00:00
12 changed files with 45 additions and 32 deletions

View File

@ -152,14 +152,21 @@ The Web based H2 Database Console is available at https://nexus.example.com/h2-c
You can also access the database cli shell as:
```bash
sudo su -l # switch to the root user.
sudo -i # switch to the root user.
systemctl stop nexus # make sure nexus is not running while you use the database.
su -s /bin/bash nexus # switch to the nexus user.
nexus_home=/opt/nexus/nexus-3.83.2-01 # make sure you have the correct version here.
nexus_home=/opt/nexus/nexus-3.84.0-03 # make sure you have the correct version here.
nexus_data="$(realpath $nexus_home/../sonatype-work/nexus3)"
install -d $nexus_data/../tmp
rm -f $nexus_data/../tmp/h2-*.jar
unzip \
-j \
-d $nexus_data/../tmp \
$nexus_home/bin/sonatype-nexus-repository-*.jar \
'BOOT-INF/lib/h2-*.jar'
function h2-shell {
java \
-cp $nexus_home/system/com/h2database/h2/*/h2*.jar \
-cp $nexus_data/../tmp/h2-*.jar \
org.h2.tools.Shell \
-url jdbc:h2:$nexus_data/db/nexus
}
@ -196,6 +203,6 @@ For more information see the [available Command Line Tools](https://h2database.c
## Reference
* [How to reset a forgotten admin password in Nexus 3.x](https://support.sonatype.com/hc/en-us/articles/213467158-How-to-reset-a-forgotten-admin-password-in-Nexus-3-x)
* [Backup and Restore](https://help.sonatype.com/repomanager3/backup-and-restore)
* [Upgrading](https://help.sonatype.com/repomanager3/upgrading)
* [How to reset a forgotten admin password in Nexus 3.x](https://support.sonatype.com/hc/en-us/articles/213467158-How-to-reset-a-forgotten-admin-password-in-Sonatype-Nexus-Repository-3)
* [Backup and Restore](https://help.sonatype.com/en/backup-and-restore.html)
* [Upgrading](https://help.sonatype.com/en/upgrade-nexus-repository.html)

View File

@ -1,7 +1,7 @@
backports.tarfile==1.2.0
build==1.3.0
certifi==2025.8.3
cffi==1.17.1
cffi==2.0.0
charset-normalizer==3.4.3
cryptography==45.0.7
docutils==0.22
@ -18,7 +18,7 @@ mdurl==0.1.2
more-itertools==10.8.0
nh3==0.3.0
packaging==25.0
pycparser==2.22
pycparser==2.23
Pygments==2.19.2
pyproject_hooks==1.2.0
readme_renderer==44.0
@ -26,7 +26,7 @@ requests==2.32.5
requests-toolbelt==1.0.0
rfc3986==2.0.0
rich==14.1.0
SecretStorage==3.3.3
SecretStorage==3.4.0
tomli==2.2.1
twine==6.2.0
typing_extensions==4.15.0

View File

@ -97,7 +97,7 @@ popd
# install and configure nginx to proxy to nexus.
# see https://help.sonatype.com/repomanager3/planning-your-implementation/run-behind-a-reverse-proxy
# see https://help.sonatype.com/en/run-behind-a-reverse-proxy.html
apt-get install -y --no-install-recommends nginx
wget -qO /etc/ssl/certs/dhparam.pem https://ssl-config.mozilla.org/ffdhe2048.txt
sed -i -E 's/^(\s*)((ssl_protocols|ssl_ciphers|ssl_prefer_server_ciphers)\s)/\1# \2/' /etc/nginx/nginx.conf

View File

@ -11,7 +11,7 @@ config_authentication='nexus'
# install java.
# see https://help.sonatype.com/repomanager3/product-information/system-requirements#SystemRequirements-Java
# see https://help.sonatype.com/en/sonatype-nexus-repository-system-requirements.html#SystemRequirements-Java
apt-get install -y openjdk-17-jre-headless
apt-get install -y gnupg
@ -32,15 +32,15 @@ install -d -o root -g nexus -m 750 /opt/nexus
# download and install nexus.
pushd /opt/nexus
# see https://www.sonatype.com/download-oss-sonatype
# see https://help.sonatype.com/repomanager3/product-information/download/download-archives---repository-manager-3
# see https://help.sonatype.com/repomanager3/product-information/release-notes
# see https://help.sonatype.com/repomanager3
nexus_version=3.83.2-01
# see https://help.sonatype.com/en/download-archives---repository-manager-3.html
# see https://help.sonatype.com/en/release-notes.html
# see https://help.sonatype.com/en/sonatype-nexus-repository.html
nexus_version=3.84.0-03
nexus_home=/opt/nexus/nexus-$nexus_version
nexus_tarball=nexus-$nexus_version-linux-x86_64.tar.gz
nexus_download_url=https://download.sonatype.com/nexus/3/$nexus_tarball
wget -q $nexus_download_url
tar xf $nexus_tarball # NB this creates the $nexus_home (e.g. nexus-3.83.2-01) and sonatype-work directories.
tar xf $nexus_tarball # NB this creates the $nexus_home (e.g. nexus-3.84.0-03) and sonatype-work directories.
rm $nexus_tarball
sed -i -E 's,#!.+,#!/usr/bin/bash,g' "$nexus_home/bin/nexus"
install -d -o nexus -g nexus -m 700 .java # java preferences are saved here (the default java.util.prefs.userRoot preference).
@ -115,7 +115,7 @@ wget -qO- https://$nexus_domain/service/extdirect/poll/rapture_State_get | jq .d
# generate a gpg key for the apt-hosted repository.
# see https://www.gnupg.org/documentation//manuals/gnupg/Unattended-GPG-key-generation.html
# see https://help.sonatype.com/repomanager3/formats/apt-repositories
# see https://help.sonatype.com/en/apt-repositories.html
# see https://wiki.archlinux.org/index.php/GnuPG#Unattended_passphrase
export GNUPGHOME="$(mktemp -d)"
cat >"$GNUPGHOME/apt-hosted-gpg-batch" <<EOF
@ -206,7 +206,7 @@ EOF
# create the apt-hosted apt repository.
# see https://help.sonatype.com/repomanager3/formats/apt-repositories
# see https://help.sonatype.com/en/apt-repositories.html
http \
--check-status \
--auth "$api_auth" \
@ -236,7 +236,7 @@ EOF
# create the npm-hosted npm repository.
# see https://help.sonatype.com/display/NXRM3/Node+Packaged+Modules+and+npm+Registries
# see https://help.sonatype.com/en/npm-registry.html
http \
--check-status \
--auth "$api_auth" \
@ -259,7 +259,7 @@ EOF
# create the npmjs.org-proxy npm proxy repository.
# see https://help.sonatype.com/display/NXRM3/Node+Packaged+Modules+and+npm+Registries
# see https://help.sonatype.com/en/npm-registry.html
http \
--check-status \
--auth "$api_auth" \
@ -292,7 +292,7 @@ EOF
# create the npm-group npm group repository.
# see https://help.sonatype.com/display/NXRM3/Node+Packaged+Modules+and+npm+Registries
# see https://help.sonatype.com/en/npm-registry.html
http \
--check-status \
--auth "$api_auth" \

View File

@ -17,7 +17,7 @@ binaries: binaries-download
binaries-download:
mkdir -p binaries
wget -qO- https://download.sonatype.com/nexus/3/nexus-3.83.2-01-unix.tar.gz \
wget -qO- https://download.sonatype.com/nexus/3/nexus-3.84.0-03-unix.tar.gz \
| tar xzf - --strip-components 1 -C binaries
clean:

View File

@ -8,7 +8,7 @@
<version>1.0-SNAPSHOT</version>
<properties>
<nx-version>3.83.2-01</nx-version>
<nx-version>3.84.0-03</nx-version>
</properties>
<dependencies>
<dependency>

View File

@ -20,7 +20,7 @@ debuild -i -us -uc -b
popd
# upload.
# see https://help.sonatype.com/repomanager3/formats/apt-repositories
# see https://help.sonatype.com/en/apt-repositories.html
apt-get install -y curl
curl \
--fail \
@ -34,9 +34,16 @@ curl \
nexus_apt_hosted_keyring_path="/etc/apt/keyrings/$nexus_domain-apt-hosted.gpg"
gpg --dearmor -o "$nexus_apt_hosted_keyring_path" </vagrant/shared/apt-hosted-public.key
# install the hello-world package.
# configure the apt-hosted repository.
echo "deb [arch=amd64 signed-by=$nexus_apt_hosted_keyring_path] https://$nexus_domain/repository/apt-hosted jammy main" >"/etc/apt/sources.list.d/$nexus_domain-apt-hosted.list"
apt-get update
# NB for some odd reason, nexus 3.84.0-03, does not immediately sign the
# repository metadata after a package is uploaded, so to prevent the
# following error, we loop until apt-get update succeeds.
# E: The repository 'https://nexus.example.com/repository/apt-hosted jammy Release' is not signed.
# see https://github.com/sonatype/nexus-public/issues/725
while ! apt-get update; do sleep 5; done
# install the hello-world package.
apt-get install -y hello-world
apt-cache show hello-world
apt-cache policy hello-world

View File

@ -7,7 +7,7 @@ mkdir -p tmp/use-npm-repository && cd tmp/use-npm-repository
#
# test the npm repositories.
# see https://help.sonatype.com/display/NXRM3/Node+Packaged+Modules+and+npm+Registries
# see https://help.sonatype.com/en/npm-registry.html
# see https://docs.npmjs.com/private-modules/ci-server-config
# see https://docs.npmjs.com/cli/adduser

View File

@ -31,8 +31,7 @@ mkdir -p tmp/use-nuget-repository && cd tmp/use-nuget-repository
#
# test the NuGet repository.
# see https://help.sonatype.com/repomanager3/formats/nuget-repositories
# see https://help.sonatype.com/repomanager3/formats/nuget-repositories/grouping-nuget-repositories
# see https://help.sonatype.com/en/nuget-repositories.html
# install the dotnet sdk.
if ! which dotnet; then

View File

@ -16,7 +16,7 @@ set +x && source .venv/bin/activate && set -x
# create the hello_world package.
# see https://packaging.python.org/en/latest/tutorials/packaging-projects/
# see https://help.sonatype.com/repomanager3/nexus-repository-administration/formats/pypi-repositories
# see https://help.sonatype.com/en/pypi-repositories.html
# NB requirements.txt was created as:
# python3 -m pip install build twine
# python3 -m pip freeze >requirements.txt

View File

@ -24,7 +24,7 @@ Set-Location tmp/use-npm-repository
#
# test the npm repositories.
# see https://help.sonatype.com/display/NXRM3/Node+Packaged+Modules+and+npm+Registries
# see https://help.sonatype.com/en/npm-registry.html
# see https://docs.npmjs.com/private-modules/ci-server-config
# see https://docs.npmjs.com/cli/adduser

View File

@ -18,7 +18,7 @@ gitea_version='1.24.5'
# see https://hub.docker.com/r/renovate/renovate/tags
# see https://github.com/renovatebot/renovate/releases
# renovate: datasource=docker depName=renovate/renovate
renovate_version='41.97.7'
renovate_version='41.98.2'
# clean.
echo 'Deleting existing Gitea...'