Skip to content
Snippets Groups Projects
Commit 78ca64a2 authored by Yauheni  Rykhter (EPAM)'s avatar Yauheni Rykhter (EPAM) Committed by Shane Hutchins
Browse files

GONRG-7679: update policy bootstrap

parent 5902f445
No related branches found
No related tags found
1 merge request!410GONRG-7679: update policy bootstrap
...@@ -10,8 +10,10 @@ class BootstrapDataPartitionBundles: ...@@ -10,8 +10,10 @@ class BootstrapDataPartitionBundles:
tar_name = "bundle-{dp}.tar.gz".format(dp=dp_id) tar_name = "bundle-{dp}.tar.gz".format(dp=dp_id)
dataauthz_template_name = "dataauthz_template.rego" dataauthz_template_name = "dataauthz_template.rego"
manifest_template_name = "manifest_template.manifest" manifest_template_name = "manifest_template.manifest"
search_template_name = "search_template.rego"
dataauthz_filename = "dataauthz.rego" dataauthz_filename = "dataauthz.rego"
manifest_filename = ".manifest" manifest_filename = ".manifest"
search_filename = "search.rego"
template_path = "devops/gc/bootstrap-osdu-module/templates/" template_path = "devops/gc/bootstrap-osdu-module/templates/"
env = Environment( env = Environment(
...@@ -20,19 +22,21 @@ class BootstrapDataPartitionBundles: ...@@ -20,19 +22,21 @@ class BootstrapDataPartitionBundles:
) )
dataauthz_template = env.get_template(dataauthz_template_name) dataauthz_template = env.get_template(dataauthz_template_name)
manifest_template = env.get_template(manifest_template_name) manifest_template = env.get_template(manifest_template_name)
search_template = env.get_template(search_template_name)
dataauthz_render = dataauthz_template.render(dp_id=dp_id) dataauthz_render = dataauthz_template.render(dp_id=dp_id)
manifest_render = manifest_template.render(dp_id=dp_id) manifest_render = manifest_template.render(dp_id=dp_id)
search_render = search_template.render(dp_id=dp_id)
with open(dataauthz_filename,"w") as f1: with open(dataauthz_filename,"w") as f1:
f1.write(dataauthz_render) f1.write(dataauthz_render)
with open(manifest_filename, "w") as f2: with open(manifest_filename, "w") as f2:
f2.write(manifest_render) f2.write(manifest_render)
with open(search_filename, "w") as f2:
f2.write(search_render)
with tarfile.open(tar_name, "w:gz") as tar_handle: with tarfile.open(tar_name, "w:gz") as tar_handle:
tar_handle.add(os.path.abspath(dataauthz_filename), arcname=dataauthz_filename) tar_handle.add(os.path.abspath(dataauthz_filename), arcname=dataauthz_filename)
tar_handle.add(os.path.abspath(manifest_filename), arcname=manifest_filename) tar_handle.add(os.path.abspath(manifest_filename), arcname=manifest_filename)
tar_handle.add(os.path.abspath(search_filename), arcname=search_filename)
# Initialize class and upload bundles # Initialize class and upload bundles
if __name__ == '__main__': if __name__ == '__main__':
......
...@@ -58,18 +58,12 @@ source ./validate-env.sh "POLICY_BUCKET" ...@@ -58,18 +58,12 @@ source ./validate-env.sh "POLICY_BUCKET"
create_instance_bundles create_instance_bundles
## Creating partition bundles ## Creating partition bundles
if [[ "${DATA_PARTITION_ID_LIST}" == "" ]]; then IFS=',' read -ra PARTITIONS <<< "${DATA_PARTITION_ID_LIST}"
# Single partition case PARTITIONS=("${PARTITIONS[@]}")
create_partition_bundle "$DATA_PARTITION"
else
# Multipartition case
IFS=',' read -ra PARTITIONS <<< "${DATA_PARTITION_ID_LIST}"
PARTITIONS=("${DATA_PARTITION}" "${PARTITIONS[@]}")
for PARTITION in "${PARTITIONS[@]}"; do for PARTITION in "${PARTITIONS[@]}"; do
create_partition_bundle "${PARTITION}" create_partition_bundle "${PARTITION}"
done done
fi
## Uploading bundles to gcs/minio bucket ## Uploading bundles to gcs/minio bucket
if [ "${ONPREM_ENABLED}" == "true" ] if [ "${ONPREM_ENABLED}" == "true" ]
......
package osdu.partition["{{dp_id}}"].search
default allow = false
allow = true {
input.operation == "view"
# At least one user group needs to be in acl viewers
input.record.acl.viewers[_]==input.groups[_]
}
allow = true {
input.operation == ["view", "create", "update", "delete", "purge"][_]
# At least one user group needs to be in acl owners
input.record.acl.owners[_]==input.groups[_]
}
...@@ -15,18 +15,11 @@ data: ...@@ -15,18 +15,11 @@ data:
gcp_metadata: gcp_metadata:
scopes: scopes:
- "{{ .Values.data.scopes }}" - "{{ .Values.data.scopes }}"
bundles: bundles:
osdu/instance: osdu/instance:
service: gcs service: gcs
# NOTE ?alt=media is required # NOTE ?alt=media is required
resource: 'bundle.tar.gz?alt=media' resource: 'bundle.tar.gz?alt=media'
osdu/partition/{{ .Values.data.dataPartitionId }}:
service: gcs
resource: 'bundle-{{ .Values.data.dataPartitionId }}.tar.gz?alt=media'
polling:
min_delay_seconds: {{ .Values.conf.minDelaySeconds }}
max_delay_seconds: {{ .Values.conf.maxDelaySeconds }}
{{- range (compact .Values.data.dataPartitionIdList) }} {{- range (compact .Values.data.dataPartitionIdList) }}
osdu/partition/{{ . }}: osdu/partition/{{ . }}:
service: gcs service: gcs
...@@ -47,9 +40,6 @@ data: ...@@ -47,9 +40,6 @@ data:
osdu/instance: osdu/instance:
service: s3 service: s3
resource: bundle.tar.gz resource: bundle.tar.gz
osdu/partition/{{ .Values.data.dataPartitionId }}:
service: s3
resource: 'bundle-{{ .Values.data.dataPartitionId }}.tar.gz'
{{- range (compact .Values.data.dataPartitionIdList) }} {{- range (compact .Values.data.dataPartitionIdList) }}
osdu/partition/{{ . }}: osdu/partition/{{ . }}:
service: s3 service: s3
......
...@@ -23,7 +23,7 @@ data: ...@@ -23,7 +23,7 @@ data:
bucketName: "" bucketName: ""
useBundles: "yes" useBundles: "yes"
dataPartitionId: "" dataPartitionId: ""
dataPartitionIdList: [] dataPartitionIdList: ["osdu"]
scopes: "https://www.googleapis.com/auth/devstorage.read_only" scopes: "https://www.googleapis.com/auth/devstorage.read_only"
# baremetal only # baremetal only
minioHost: "http://minio:9000" minioHost: "http://minio:9000"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment