If you've already followed deployment guides for archipelago-deployment and archipelago-deployment-live, you may have used some shell scripts that archipelago provides. The scripts are available in the
drupal/scripts/archipelago/ folders respectively.
Import/Export Metadata Display Twig Templates
Metadata Display Entity Twig Templates can be exported out of and imported into both local and remote deployments with the following script:
import_export.sh. The script can be run interactively or non-interactively.
Docker host vs. Docker container
Because the script uses the Docker
.env file for the JSONAPI user and URL by default, we recommend running this directly on the host.
Running the script interactively will guide you through a number of prompts to configure and import or export to an existing folder or to one which will be created.
To run the command non-interactively provide the required and optional parameters with the necessary arguments as needed.
Options for Non-interactive Mode
Import or export, respectively, Metadata Entity Display Twig Templates from a local folder.
-s path (required)
The absolute path of the local folder to export to or import from.
-j path/filename (only required if the
.env file containing the JSONAPI user and password is in a non-standard location)
The absolute path to the
.env file containing the JSONAPI user and password.
-d url (required if URL is not in
.env file or importing to or exporting from a remote deployment)
The URL of the archipelago deployment.
Keep any existing files ending with
.json in the specified folder (the default is to delete) before exporting.
The JSONAPI user credentials, by default, will be read from the
.env files in the following locations (relative to the root of the deployment):
A separate file can also be passed as an argument using the
Exporting from local archipelago-deployment-live
./import_export.sh -e -s /home/ec2-user/metadatadisplay_export
.jsonextension if the destination folder exists. Otherwise, the folder will be created. The JSON user credentials and domain from the
.envfile will then be used to download the files so please make sure these are set.
Exporting from local archipelago-deployment
./import_export.sh -e -s /home/user/metadatadisplay_export -d http://localhost:8001
.envfile will not contain (in most cases) the domain. As above, the JSON user credentials will have to be set in the
Exporting from remote archipelago-deployment-live
./import_export.sh -e -s /home/user/metadatadisplay_export -d https://archipelago.nyc
.envfile will have to be set to the ones used to access the remote instance.
Importing locally into archipelago-deployment-live
./import_export.sh -i -s /home/user/metadatadisplay_import
-i) is used. The folder name is changed for the sake of example, but you can use the same folder that was used for exporting.
Importing locally into archipelago-deployment
./import_export.sh -i -s /home/user/metadatadisplay_import -d http://localhost:8001
-i) is used.
Importing from local instance into remote archipelago-deployment-live
./import_export.sh -i -s /home/user/metadatadisplay_import -d https://archipelago.nyc
.envfile to those with access to the remote instance.
Automatic Deployment Script
If you're frequently deploying locally with archipelago-deployment, you may want to use the automated deployment script available at
scripts/archipelago/devops/auto_deploy.sh. The script is interactive and can be called from the root of the deployment, e.g.
Follow the prompts and select your options to complete the deployment.
Created: November 29, 2022