hashicorp-copywrite[bot] 5fb9df1640
[COMPLIANCE] License changes (#18443)
* Adding explicit MPL license for sub-package

This directory and its subdirectories (packages) contain files licensed with the MPLv2 `LICENSE` file in this directory and are intentionally licensed separately from the BSL `LICENSE` file at the root of this repository.

* Adding explicit MPL license for sub-package

This directory and its subdirectories (packages) contain files licensed with the MPLv2 `LICENSE` file in this directory and are intentionally licensed separately from the BSL `LICENSE` file at the root of this repository.

* Updating the license from MPL to Business Source License

Going forward, this project will be licensed under the Business Source License v1.1. Please see our blog post for more details at <Blog URL>, FAQ at www.hashicorp.com/licensing-faq, and details of the license at www.hashicorp.com/bsl.

* add missing license headers

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

* Update copyright file headers to BUSL-1.1

---------

Co-authored-by: hashicorp-copywrite[bot] <110428419+hashicorp-copywrite[bot]@users.noreply.github.com>
2023-08-11 09:12:13 -04:00

70 lines
2.6 KiB
JavaScript

/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: BUSL-1.1
*/
export default function (scenario, create, set, win = window, doc = document) {
scenario
.given(['an external edit results in $number $model model[s]?'], function (number, model) {
return create(number, model);
})
.given(['$number $model model[s]?'], function (number, model) {
return create(number, model);
})
.given(['$number $model model[s]? with the value "$value"'], function (number, model, value) {
if (model === 'dc') {
doc.cookie = `CONSUL_DATACENTER_LOCAL=${value}`;
}
return create(number, model, value);
})
.given(
['$number $model model[s]? from yaml\n$yaml', '$number $model model[s]? from json\n$json'],
function (number, model, data) {
if (model === 'dc') {
doc.cookie = `CONSUL_DATACENTER_LOCAL=${data[0]}`;
}
return create(number, model, data);
}
)
.given(['settings from yaml\n$yaml'], function (data) {
return Object.keys(data).forEach(function (key) {
win.localStorage[key] = JSON.stringify(data[key]);
});
})
.given(['ui_config from yaml\n$yaml'], function (data) {
// this one doesn't interact with the api therefore you don't need to use
// setCookie/set. Ideally setCookie should probably use doc.cookie also so
// there is no difference between these
doc.cookie = `CONSUL_UI_CONFIG=${JSON.stringify(data)}`;
})
.given(['the local datacenter is "$value"'], function (value) {
doc.cookie = `CONSUL_DATACENTER_LOCAL=${value}`;
})
.given(['ACLs are disabled'], function () {
doc.cookie = `CONSUL_ACLS_ENABLE=0`;
})
.given(['SSO is enabled'], function () {
doc.cookie = `CONSUL_SSO_ENABLE=1`;
set('CONSUL_SSO_ENABLE', 1);
})
.given(['partitions are enabled'], function () {
doc.cookie = `CONSUL_PARTITIONS_ENABLE=1`;
set('CONSUL_PARTITIONS_ENABLE', 1);
})
.given(['the default ACL policy is "$policy"'], function (policy) {
set('CONSUL_ACL_POLICY', policy);
})
.given(['a "$value" metrics provider'], function (value) {
doc.cookie = `CONSUL_METRICS_PROXY_ENABLE=1`;
doc.cookie = `CONSUL_METRICS_PROVIDER=${value}`;
})
.given(['permissions from yaml\n$yaml'], function (data) {
Object.entries(data).forEach(([key, value]) => {
const resource = `CONSUL_RESOURCE_${key.toUpperCase()}`;
Object.entries(value).forEach(([key, value]) => {
set(`${resource}_${key.toUpperCase()}`, value);
});
});
});
}