Uploading the assets#
Caution
These steps are meant to be executed in the air-gapped environment.
As described in Hosting assets, there are two ways the services can be hosted in the air-gapped environment:
- All services are hosted on a single Assets Host (typically deployed as an Assets VM).
- Some services are hosted on different hosts.
The procedure differs depending on whether assets are uploaded through a single Assets Host or to services running on different hosts.
Prerequisites#
Skip this step if you have already completed it as part of the Assets VM deployment.
The downloaded assets are transferred to the air-gapped environment.
Loading the Kpt Setters image#
Note
These steps are to be executed in the air-gapped environment.
The procedures for setting up the Assets VM and installing EDA use Kpt - a package manager for Kubernetes. Kpt relies on the kpt-apply-setters container to be present in the local Docker image cache of the air-gapped system to be able to perform its operations.
The container image is part of the eda-bundle-tools bundle. If you downloaded the default bundle list, which includes eda-bundle-tools, you will have that bundle on your air-gapped system. If you do not have it yet, download the default bundle list on a system with Internet access using make -C bundles/ save-default-bundles.
To load the kpt-apply-setters image from the eda-bundle-tools bundle, follow these steps:
-
Ensure you have changed into the directory of the cloned
edaadmrepository. -
Import the image into the local Docker image cache.
The bundle and
kpt-apply-settersversions may change in future releases. In that case, replace2-0-0and0-1-1with the appropriate versions.
Note
In case you used the archive-based transfer method to get the assets in the air-gapped environment, you need to unpack the archive:
Setting EDA version#
Set the EDA_CORE_VERSION and EDA_APPS_VERSION environment variables in your shell to the target Nokia EDA release version. Otherwise, the latest version is assumed.
Preparing the Git repositories for user bundles#
Warning
Execute this step if all of the following conditions are met, otherwise skip it:
- You are using EDA-provided Git servers.
- You have user bundles that contain Git repositories.
Before loading the bundles, ensure that the custom repositories are configured in the setters file as described in Step 2 of User bundles. Then run the following command from the root of the edaadm repository:
Uploading assets to a single Assets Host#
When a container registry, Git server, and web server are all hosted on a single Assets Host1, specify the Assets Host address by using the ASSET_HOST Make variable in the following command:
- IP address or FQDN of the Assets Host.
- Base64 encoded (without newline) username and password for the Git server, defaulting to
edafor both username and password. - Base64 encoded (without newline) username and password for the web server, defaulting to
edafor both username and password. - In case you downloaded bundles other than the default bundle list, you need to specify the bundle names you used in the downloading the assets step to upload the assets to the Assets Host.
Notes
- Note that besides the mandatory
load-default-bundlestarget, you need to specify any additional bundle names you used in the Downloading the assets step, as shown on line 2 of the example above. - Replace the
ASSET_HOSTIP address with the IP address of your Assets VM. - The usernames and passwords will be configurable in a future release. The default username and password are both
eda.
Uploading assets to different hosts#
If some of the services are hosted on different hosts, you need to use one or more of the following Make variables:
-
ASSET_HOST_REGISTRY- example:
registry.corp.com
This should not specify a scheme such as HTTP or HTTPS. If you need to force HTTP, the scheme must be specified ashttp://registry.com.
-
ASSET_HOST_GIT- example:
https://git.corp.com
-
ASSET_HOST_ARTIFACTS- example:
https://artifacts.corp.com
Specify the authentication credentials in base64 encoding for the used services by providing the following Make variables:
B64_ASSET_HOST_GIT_USERNAMEB64_ASSET_HOST_GIT_PASSWORDB64_ASSET_HOST_ARTIFACTS_USERNAMEB64_ASSET_HOST_ARTIFACTS_PASSWORDB64_ASSET_HOST_REGISTRY_USERNAMEB64_ASSET_HOST_REGISTRY_PASSWORD
make -C bundles/ \
load-default-bundles \
load-<bundle-name> \ #(2)!
ASSET_HOST_GIT=https://mygit.net/git/project1337 \ #(1)!
B64_ASSET_HOST_GIT_USERNAME="ZWRh" \
B64_ASSET_HOST_GIT_PASSWORD="ZWRh" \
ASSET_HOST_ARTIFACTS=https://mysrv.net/artifacts-upload \
B64_ASSET_HOST_ARTIFACTS_USERNAME="ZWRh" \
B64_ASSET_HOST_ARTIFACTS_PASSWORD="ZWRh" \
ASSET_HOST_REGISTRY=myregistry.net \
B64_ASSET_HOST_REGISTRY_USERNAME="ZWRh" \
B64_ASSET_HOST_REGISTRY_PASSWORD="ZWRh"
- Example of the Git server address.
- In case you downloaded bundles other than the default bundle list, you need to specify the bundle names you used in the downloading the assets step to upload the assets to the respective hosts.
Once all uploads have completed successfully, the asset-hosting services are ready to support installation of the Nokia EDA platform in the air-gapped environment.
-
Called a unified mode. ↩