You can bootstrap the Artifactory admin password and the Artifactory configuration when using Helm Charts.
Bootstrap the Artifactory Admin Password
You can bootstrap the admin user password as described in Recreating the Default Admin User.
Create
admin-creds-values.yamland provide the IP (by default 127.0.0.1) and password.artifactory: admin: ip: "<IP_RANGE>" # Example: "*" to allow access from anywhere username: "admin" password: "<PASSWD>"Apply the
admin-creds-values.yamlfile.Artifactory
helm upgrade --install artifactory --namespace artifactory jfrog/artifactory -f admin-creds-values.yaml
Artifactory HA
helm upgrade --install artifactory-ha --namespace artifactory-ha jfrog/artifactory-ha -f admin-creds-values.yaml
Restart the Artifactory pod (
Kubectl delete pod <pod_name>).
Bootstrap the Artifactory Configuration
You can use Helm Charts to bootstrap the Artifactory global and security configuration. To do so, you will need an Artifactory subscription.
Create a
bootstrap-config.yamlwith anartifactory.config.import.xmland asecurity.import.xmlas shown below.apiVersion: v1 kind: ConfigMap metadata: name: my-release-bootstrap-config data: artifactory.config.import.xml: | <config contents> security.import.xml: | <config contents>Create a configMap in Kubernetes.
kubectl apply -f bootstrap-config.yaml
Pass the configMap to Helm using one of the following options.
Artifactory
helm upgrade --install artifactory --set artifactory.license.secret=artifactory-license,artifactory.license.dataKey=art.lic,artifactory.configMapName=my-release-bootstrap-config --namespace artifactory jfrog/artifactory
Artifactory HA
helm upgrade --install artifactory-ha --set artifactory.license.secret=artifactory-license,artifactory.license.dataKey=art.lic,artifactory.configMapName=my-release-bootstrap-config --namespace artifactory-ha jfrog/artifactory-ha
or
Artifactory
helm upgrade --install artifactory --set artifactory.license.licenseKey=<LICENSE_KEY>,artifactory.configMapName=my-release-bootstrap-config --namespace artifactory jfrog/artifactory
Artifactory HA
helm upgrade --install artifactory-ha --set artifactory.license.licenseKey=<LICENSE_KEY>,artifactory.configMapName=my-release-bootstrap-config --namespace artifactory-ha jfrog/artifactory-ha
For more information, see Bootstrapping the Artifactory Global Configuration and Bootstrapping the Artifactory Security Configuration.
Copy Configuration Files for Every Startup
Files stored in the /artifactory-extra-conf directory are only copied to the ARTIFACTORY_HOME/etc directory upon the first startup. In some cases, you might want your configuration files to be copied to the ARTIFACTORY_HOME/etc directory on every startup.
For example:
The binarystore.xml file: If you use the default behavior, your binarystore.xml configuration will only be copied on the first startup, which means that changes you make over time to the binaryStore.xml configuration will not be applied.
To make sure your changes are applied on every startup, create a YAML block with the following values:
artifactory: copyOnEveryStartup: - source: /artifactory_bootstrap/binarystore.xml target: etc/artifactoryInstall the Helm chart with the values file you created:
Artifactory
helm upgrade --install artifactory --namespace artifactory jfrog/artifactory -f values.yaml
Artifactory HA
helm upgrade --install artifactory-ha --namespace artifactory-ha jfrog/artifactory-ha -f values.yaml
Any custom configuration file you have to configure Artifactory, such as logback.xml :
Create a configMap with your
logback.xmlconfiguration.Next, create a
values.yamlfile with the following values:artifactory: ## Create a volume pointing to the config map with your configuration file customVolumes: | - name: logback-xml-configmap configMap: name: logback-xml-configmap customVolumeMounts: | - name: logback-xml-configmap mountPath: /tmp/artifactory-logback/ copyOnEveryStartup: - source: /tmp/artifactory-logback/* target: etc/artifactoryInstall the Helm chart with the values file you created:
Artifactory
helm upgrade --install artifactory --namespace artifactory jfrog/artifactory -f values.yaml
Artifactory HA
helm upgrade --install artifactory-ha --namespace artifactory-ha /jfrog/artifactory-ha -f values.yaml