diff --git a/src/nm-cloud-setup/main.c b/src/nm-cloud-setup/main.c index 4070a01e79..c7680860b0 100644 --- a/src/nm-cloud-setup/main.c +++ b/src/nm-cloud-setup/main.c @@ -882,6 +882,7 @@ _config_one(SigTermData *sigterm_data, guint idx) { const NMCSProviderGetConfigIfaceData *config_data = result->iface_datas_arr[idx]; + gboolean allow_new_connections; gboolean any_changes; g_main_context_iteration(NULL, FALSE); @@ -904,7 +905,12 @@ _config_one(SigTermData *sigterm_data, return FALSE; } - if (NMCS_IS_PROVIDER_OCI(provider) && config_data->priv.oci.vlan_tag != 0) { + /* Default on on OCI, with an environment variable serving as a chicken bit. */ + allow_new_connections = + _nm_utils_ascii_str_to_bool(g_getenv(NMCS_ENV_NM_CLOUD_SETUP_ALLOW_NEW_CONN), + NMCS_IS_PROVIDER_OCI(provider)); + + if (allow_new_connections && config_data->priv.oci.vlan_tag != 0) { if (config_data->priv.oci.parent_hwaddr == NULL) { _LOGW("config device %s: has vlan id %d but no parent device", config_data->hwaddr, diff --git a/src/nm-cloud-setup/nm-cloud-setup-utils.h b/src/nm-cloud-setup/nm-cloud-setup-utils.h index 713b15194e..6b3be11f1c 100644 --- a/src/nm-cloud-setup/nm-cloud-setup-utils.h +++ b/src/nm-cloud-setup/nm-cloud-setup-utils.h @@ -23,6 +23,7 @@ #define NMCS_ENV_NM_CLOUD_SETUP_GCP_HOST "NM_CLOUD_SETUP_GCP_HOST" #define NMCS_ENV_NM_CLOUD_SETUP_OCI_HOST "NM_CLOUD_SETUP_OCI_HOST" #define NMCS_ENV_NM_CLOUD_SETUP_MAP_INTERFACES "NM_CLOUD_SETUP_MAP_INTERFACES" +#define NMCS_ENV_NM_CLOUD_SETUP_ALLOW_NEW_CONN "NM_CLOUD_SETUP_ALLOW_NEW_CONN" /*****************************************************************************/