Skip to end of metadata
Go to start of metadata

You are viewing an old version of this content. View the current version.

Compare with Current View Version History

« Previous Version 2 Next »

Repository - https://github.com/project-sunbird/sunbird-devops

Cloud specific ansible role

  • We will need to create an OCI specific ansible role which can perform tasks such as upload / download / delete of files and folders etc.

  • Take a look at one of the existing cloud provider role such as AWS / GCP to understand what all operations are required as part of the role.

Ansible tasks related to storage buckets

Below is a sample block which uploads to AWS S3 bucket (https://github.com/project-sunbird/sunbird-devops/blob/release-5.1.0/ansible/artifacts-upload.yml#L30-L41 )

    - name: upload artifact to aws s3
      include_role:
        name: aws-cloud-storage
        tasks_from: upload.yml
      vars:
        local_file_or_folder_path: "{{ artifact_path }}"
        s3_bucket_name: "{{ cloud_storage_artifacts_bucketname }}"
        s3_path: "{{ artifact }}"
        aws_default_region: "{{ cloud_public_storage_region }}"
        aws_access_key_id: "{{ cloud_artifact_storage_accountname }}"
        aws_secret_access_key: "{{ cloud_artifact_storage_secret }}"
      when: cloud_service_provider == "aws"
  • In order to support OCI, we will need to add a similar block which can invoke the OCI specific roles and upload to OCI storage buckets

  • Below is the list of files that need to be modified to include the OCI storage role

ansible/dial_upload-schema.yml
ansible/uploadFAQs.yml
ansible/deploy-plugins.yml
ansible/desktop-faq-upload.yml
ansible/artifacts-upload.yml
ansible/es.yml
ansible/kp_upload-schema.yml
ansible/roles/prometheus-backup-v2/tasks/main.yml
ansible/roles/postgresql-backup/tasks/main.yml
ansible/roles/prometheus-restore/tasks/main.yml
ansible/roles/cert-templates/tasks/main.yml
ansible/roles/prometheus-backup/tasks/main.yml
ansible/roles/cassandra-backup/tasks/main.yml
ansible/roles/postgres-managed-service-restore/tasks/main.yml
ansible/roles/desktop-deploy/tasks/main.yml
ansible/roles/cassandra-restore/tasks/main.yml
ansible/roles/jenkins-backup-upload/tasks/main.yml
ansible/roles/mongodb-backup/tasks/main.yml
ansible/roles/redis-backup/tasks/main.yml
ansible/roles/postgresql-restore/tasks/main.yml
ansible/roles/es6/tasks/main.yml
ansible/roles/log-es6/tasks/main.yml
ansible/roles/postgres-managed-service-backup/tasks/main.yml
ansible/roles/grafana-backup/tasks/main.yml
ansible/assets-upload.yml
ansible/artifacts-download.yml
ansible/plugins.yml
  • No labels