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: You can also access the database cli shell as:
```bash ```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. systemctl stop nexus # make sure nexus is not running while you use the database.
su -s /bin/bash nexus # switch to the nexus user. 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)" 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 { function h2-shell {
java \ java \
-cp $nexus_home/system/com/h2database/h2/*/h2*.jar \ -cp $nexus_data/../tmp/h2-*.jar \
org.h2.tools.Shell \ org.h2.tools.Shell \
-url jdbc:h2:$nexus_data/db/nexus -url jdbc:h2:$nexus_data/db/nexus
} }
@ -196,6 +203,6 @@ For more information see the [available Command Line Tools](https://h2database.c
## Reference ## 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) * [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/repomanager3/backup-and-restore) * [Backup and Restore](https://help.sonatype.com/en/backup-and-restore.html)
* [Upgrading](https://help.sonatype.com/repomanager3/upgrading) * [Upgrading](https://help.sonatype.com/en/upgrade-nexus-repository.html)

View File

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

View File

@ -97,7 +97,7 @@ popd
# install and configure nginx to proxy to nexus. # 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 apt-get install -y --no-install-recommends nginx
wget -qO /etc/ssl/certs/dhparam.pem https://ssl-config.mozilla.org/ffdhe2048.txt 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 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. # 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 openjdk-17-jre-headless
apt-get install -y gnupg apt-get install -y gnupg
@ -32,15 +32,15 @@ install -d -o root -g nexus -m 750 /opt/nexus
# download and install nexus. # download and install nexus.
pushd /opt/nexus pushd /opt/nexus
# see https://www.sonatype.com/download-oss-sonatype # 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/en/download-archives---repository-manager-3.html
# see https://help.sonatype.com/repomanager3/product-information/release-notes # see https://help.sonatype.com/en/release-notes.html
# see https://help.sonatype.com/repomanager3 # see https://help.sonatype.com/en/sonatype-nexus-repository.html
nexus_version=3.83.2-01 nexus_version=3.84.0-03
nexus_home=/opt/nexus/nexus-$nexus_version nexus_home=/opt/nexus/nexus-$nexus_version
nexus_tarball=nexus-$nexus_version-linux-x86_64.tar.gz nexus_tarball=nexus-$nexus_version-linux-x86_64.tar.gz
nexus_download_url=https://download.sonatype.com/nexus/3/$nexus_tarball nexus_download_url=https://download.sonatype.com/nexus/3/$nexus_tarball
wget -q $nexus_download_url 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 rm $nexus_tarball
sed -i -E 's,#!.+,#!/usr/bin/bash,g' "$nexus_home/bin/nexus" 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). 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. # generate a gpg key for the apt-hosted repository.
# see https://www.gnupg.org/documentation//manuals/gnupg/Unattended-GPG-key-generation.html # 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 # see https://wiki.archlinux.org/index.php/GnuPG#Unattended_passphrase
export GNUPGHOME="$(mktemp -d)" export GNUPGHOME="$(mktemp -d)"
cat >"$GNUPGHOME/apt-hosted-gpg-batch" <<EOF cat >"$GNUPGHOME/apt-hosted-gpg-batch" <<EOF
@ -206,7 +206,7 @@ EOF
# create the apt-hosted apt repository. # 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 \ http \
--check-status \ --check-status \
--auth "$api_auth" \ --auth "$api_auth" \
@ -236,7 +236,7 @@ EOF
# create the npm-hosted npm repository. # 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 \ http \
--check-status \ --check-status \
--auth "$api_auth" \ --auth "$api_auth" \
@ -259,7 +259,7 @@ EOF
# create the npmjs.org-proxy npm proxy repository. # 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 \ http \
--check-status \ --check-status \
--auth "$api_auth" \ --auth "$api_auth" \
@ -292,7 +292,7 @@ EOF
# create the npm-group npm group repository. # 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 \ http \
--check-status \ --check-status \
--auth "$api_auth" \ --auth "$api_auth" \

View File

@ -17,7 +17,7 @@ binaries: binaries-download
binaries-download: binaries-download:
mkdir -p binaries 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 | tar xzf - --strip-components 1 -C binaries
clean: clean:

View File

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

View File

@ -20,7 +20,7 @@ debuild -i -us -uc -b
popd popd
# upload. # upload.
# see https://help.sonatype.com/repomanager3/formats/apt-repositories # see https://help.sonatype.com/en/apt-repositories.html
apt-get install -y curl apt-get install -y curl
curl \ curl \
--fail \ --fail \
@ -34,9 +34,16 @@ curl \
nexus_apt_hosted_keyring_path="/etc/apt/keyrings/$nexus_domain-apt-hosted.gpg" 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 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" 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-get install -y hello-world
apt-cache show hello-world apt-cache show hello-world
apt-cache policy 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. # 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/private-modules/ci-server-config
# see https://docs.npmjs.com/cli/adduser # 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. # test the NuGet repository.
# see https://help.sonatype.com/repomanager3/formats/nuget-repositories # see https://help.sonatype.com/en/nuget-repositories.html
# see https://help.sonatype.com/repomanager3/formats/nuget-repositories/grouping-nuget-repositories
# install the dotnet sdk. # install the dotnet sdk.
if ! which dotnet; then if ! which dotnet; then

View File

@ -16,7 +16,7 @@ set +x && source .venv/bin/activate && set -x
# create the hello_world package. # create the hello_world package.
# see https://packaging.python.org/en/latest/tutorials/packaging-projects/ # 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: # NB requirements.txt was created as:
# python3 -m pip install build twine # python3 -m pip install build twine
# python3 -m pip freeze >requirements.txt # python3 -m pip freeze >requirements.txt

View File

@ -24,7 +24,7 @@ Set-Location tmp/use-npm-repository
# #
# test the npm repositories. # 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/private-modules/ci-server-config
# see https://docs.npmjs.com/cli/adduser # 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://hub.docker.com/r/renovate/renovate/tags
# see https://github.com/renovatebot/renovate/releases # see https://github.com/renovatebot/renovate/releases
# renovate: datasource=docker depName=renovate/renovate # renovate: datasource=docker depName=renovate/renovate
renovate_version='41.97.7' renovate_version='41.98.2'
# clean. # clean.
echo 'Deleting existing Gitea...' echo 'Deleting existing Gitea...'