This article shows how to use jfrog artifactory with EDB repositories. Setting up jfrog artifactory remote repositories is actually pretty straight forward, the setup is based around the baseurls from the usual yum repository configuration provided by EnterpriseDB.
In the following example, we will setup the artifactory repositories for the standard repositories
Setup will be carried out using the following baseurls:
https://downloads.enterprisedb.com/{repos2_token}/standard/rpm/el/9/x86_64/
https://downloads.enterprisedb.com/{repos2_token}/standard/rpm/el/9/noarch/
Using the artifactory UI, create the 2 repositories (x86_64 and noarch).
Start with the x86_64 repository:
- Select Create Repository and choose Remote.
- Choose rpm as the repository type.
- Fill in Repsitory Key as a unique name, for this example we will use edb-x86_64.
- Fill in the URL as https://downloads.enterprisedb.com/{repos2_token}/standard/rpm/el/9/x86_64/.
- Select Create Remote Repository in the bottom right of the screen.
You will now be prompted to setup the yum
client, which you may as well do.
-
On your local RHEL 9 server or VM create the yum repository file /etc/yum.repos.d/artifactory-edb.repo.
-
Add the generated text to the file, it should look similar to, we will change the name of the repository slightly, as shown below:
[Artifactory-edb-x86_64]
name=Artifactory-edb-x86_64
baseurl=https://username%40domain:{artifactory_token}@username.jfrog.io/artifactory/edb-x86_64/
enabled=1
gpgcheck=0
- Now create the artifactory remote repository for the edb noarch repository, using the same process, and when generating the yum configuration add the generated text to the local linux server's repo file we have already created.
[Artifactory-edb-noarch]
name=Artifactory-edb-noarch
baseurl=username%40domain:{artifactry_token}@username.jfrog.io/artifactory/edb-noarch/
enabled=1
gpgcheck=0
Your /etc/yum.repos.d/artifactory-edb.repo contents should now be:
[Artifactory-edb-x86_64]
name=Artifactory-edb-x86_64
baseurl=username%40domain:{artifactry_token}@username.jfrog.io/artifactory/edb-x86_64/
enabled=1
gpgcheck=0
[Artifactory-edb-noarch]
name=Artifactory-edb-noarch
baseurl=username%40domain:{artifactry_token}@username.jfrog.io/artifactory/edb-noarch/
enabled=1
gpgcheck=0
Note, on the generated yum repository files, a the end of the baseurl you will see <PATH_TO_REPODATA_FOLDER> added, simply remove this as there is no need to specify an additional sub path for the repomd files etc.
On the local linux server, check that the repositories are configured
dnf repolist | grep -i Art
The output returned should be:
Artifactory-edb-noarch Artifactory-edb-noarch
Artifactory-edb-x86_64 Artifactory-edb-x86_64
As can be see our 2 repositories are now configured
Now check for a specific package, for example, postgresextended in the artifactory repository, as part of the dnf list
command, for this est we will disable all other repositories aside from the Artifactory repositories.
dnf list edb-postgresextended15-server --disablerepo=* --enablerepo=Artifactory-*
If configured and working correctly the output should resemble:
Updating Subscription Management repositories.
Last metadata expiration check: 0:01:58 ago on Thu 04 Jul 2024 06:00:31 EDT.
Available Packages
edb-postgresextended15-server.x86_64 15.7-2.el9 Artifactory-edb-x86_64
As can be seen the EDB repositories are now accessible via jfrog artifactory.