diff --git a/advocacy_docs/repos/working_with_repos/integrating/artifactory.mdx b/advocacy_docs/repos/working_with_repos/integrating/artifactory.mdx new file mode 100644 index 00000000000..d582a91082a --- /dev/null +++ b/advocacy_docs/repos/working_with_repos/integrating/artifactory.mdx @@ -0,0 +1,130 @@ +--- +title: Using Artifactory with EDB repositories +navTitle: Artifactory +description: How to use JFrog Artifactory with EDB repositories +--- + +To set up JFrog Artifactory with EDB repositories, you need to create remote repositories in Artifactory. This article shows how to use JFrog Artifactory with EDB repositories. + +## Get the base URLs + +The process is requires a base URLs to access the EDB repositories. + +1. From your EDB account, [get your token](../../getting_started/with_cli/get_your_token). + +1. Make a note of your token, for our examples, the token will be `xyz123`: + +1. Select the repository you want to access, for example, `standard`. : + +1. Your base URL will is then formed as: + + ``` + https://downloads.enterprisedb.com///" + ``` + + For the `standard` with our token, the repository, the base URL will be: + + ``` + https://downloads.enterprisedb.com/xyz123/standard/ + ``` + +1. Append the appropriate path for the repository type. + For example, for a Red Hat Enterprise Linux 9 on x86 architecture, append `rpm/el/9/x86_64/` and seperately append `rpm/el/9/noarch/` for the noarch packages, to create two base URLs. With our example, the base URLs will be: + + ``` + https://downloads.enterprisedb.com/xyz123/standard/rpm/el/9/x86_64/ + https://downloads.enterprisedb.com/xyz123/standard/rpm/el/9/noarch/ + ``` + +## Setup Artifactory remote repositories + +With your base URLs, you can now create the remote repositories in Artifactory. + +Use the Artifactory UI to create the 2 repositories (`x86_64` and `noarch`), one for each base URL. The `x86_64` repository will contain the `rpm` packages specifically for the `x86_64` architecture, and the `noarch` repository will contain the `rpm` packages which are for any architecture. + +Starting with the `x86_64` base URL: + +1. Select **Create Repository** and choose **Remote**. +1. Choose **rpm** as the repository type. +1. Enter a unique name for the repository key, for example, `edb-x86_64`. +1. Fill in the URL as `https://downloads.enterprisedb.com/xyz123/standard/rpm/el/9/x86_64/`. +1. Select **Create Remote Repository**. + +At this point, a prompt to setup the `yum` client configuration appears. This client configuration is the configuration you use on your local server or VM to access the configured EDB repositories via Artifactory. + +6. On your local RHEL 9 server or VM create the yum repository file `/etc/yum.repos.d/artifactory-edb.repo`. + +7. Add the text generated by Artifactory to the `/etc/yum.repos.d/artifactory-edb.repo` file. The generated text should resemble: + + ``` + [Artifactory] + name=Artifactory + baseurl=https://username%40domain:{artifactory_token}@username.jfrog.io/artifactory/edb-x86_64/ + enabled=1 + gpgcheck=0 + ``` + + Remove the `` from the baseurl. It's not needed. + + You should also edit the `Atrifactory` name to be more descriptive and unique as there are multiple repositories to add. For example, append `-edb-x86_64` to the name to give: + + ``` + [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 + ``` + + Save the file. + +8. Repeat the process, steps 1-7, to create an Artifactory remote repository for the `noarch` repository. When you generate the **yum** configuration text, add that text to the `/etc/yum.repos.d/artifactory-edb.repo` file previously created. The file should now contain: + + ``` + [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 + ``` + +## Check the configuration works + +On the local Linux server where the `/etc/yum.repos.d/artifactory-edb.repo` file resides, check that the repositories configuration is correct by running the following command: + + +```bash +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. + +You can now check for a specific package, such as `postgresextended` in the Artifactory repository, using the `dnf list` command. The package name for this example is `edb-postgresextended15-server` which is EDB Postgres Extended 15. To ensure that you don't get false positives from other repositories, disable all repositories using `--disable-repo=*` and then only enable the `Artifactory-` prefixed repositories using `--enablerepo=Artifactory-*`: + +```bash +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 +``` + +The EDB package `edb-postgresextended15-server` is now available to install from the Artifactory repository. diff --git a/advocacy_docs/repos/working_with_repos/integrating/index.mdx b/advocacy_docs/repos/working_with_repos/integrating/index.mdx index 19048feb599..8b3feffc9f2 100644 --- a/advocacy_docs/repos/working_with_repos/integrating/index.mdx +++ b/advocacy_docs/repos/working_with_repos/integrating/index.mdx @@ -4,9 +4,11 @@ navTitle: Integrating description: How to integrate EDB repositories with configuration management tools --- -Content coming soon: +In this section, you will find information on how to integrate EDB repositories with configuration management tools. - * JFrog Artifactory - * Satellite - * Nexus + * [JFrog Artifactory](artifactory) + + + +