Commit 153a45b8 authored by Niall McDaid's avatar Niall McDaid Committed by Niall McDaid
Browse files

Initial sections of SMG

parent f9886614
- [System Maintenance Guide - Wellbore DDMS Data Loader](#system-maintenance-guide---wellbore-ddms-data-loader)
- [Overview](#overview)
- [Architecture](#architecture)
- [Development Access and Contacts](#development-access-and-contacts)
- [Key Contacts](#key-contacts)
- [Release and Deployment Responsibilities](#release-and-deployment-responsibilities)
- [CI and CD](#ci-and-cd)
- [Software Dependencies](#software-dependencies)
- [Packages](#packages)
# System Maintenance Guide - Wellbore DDMS Data Loader
## Overview
This system is a wrapper behind the [Wellbore DDMS API](https://community.opengroup.org/osdu/platform/domain-data-mgmt-services/wellbore/wellbore-domain-services/-/blob/master/spec/generated/openapi.json). It exists as a utility to support the loading of data from files (e.g. LAS) into an OSDU instance.
The system is implemented as a command line application that can be installed by following the instructions in the repository's [README.md](README.md) file.
## Architecture
## Development Access and Contacts
The system can be managed completely via the [GitLab project](https://community.opengroup.org/osdu/platform/data-flow/data-loading/wellbore-ddms-data-loader). Developer access to this project can be requested from one of the contacts below.
### Key Contacts
- **Chad Leong (cleong4@wellbarrier.slb.com)** is the product owner for this system. He can grant required access for development activities (i.e. developer access to the repository).
- The **R3 Data Loading** team are the current users of the system. If Chad Leong is unavailable someone in the *#2_2_2_r3_data_loading* channel (ID: CTZK7DWP2) on *The OSDU Forum* Slack workspace should be able to help.
## Release and Deployment Responsibilities
Continuous integration (CI) and continuous deployment (CD) pipelines are set up in the project on GitLab. These are set up to run automatically after every merge request is completed (i.e. when a development branch is merged into `main` branch).
It is therefore the responsibility of the developer and the approver of a merge request to ensure these pipelines are running and the system is being successfully deployed.
### CI and CD
On completion of any merge request the following steps are run:
1. Linting - 'flake8' linting is configured within the [src/.flake8](src/.flake8) file.
2. Tests - 'pytest' finds all tests within the `src/test` folder and runs them.
3. Packaging - using the [setup.py](setup.py) file, the application is packaged into a wheel (.whl) file.
4. Deployment - the new packaged application is deployed to the Open Group's PyPI registry.
Full details of the pipeline can be found in the [.gitlab-ci.yml](.gitlab-ci.yml) file.
## Software Dependencies
Developers and users should install the following:
- Python (version >=3.8)
### Packages
Developers: A Pipfile is used for managing package dependencies. The current Pipfile containing the most up-to-date list of packages used can be found [here](src/Pipfile). All required packages can be installed and maintained as described in the *Development* section of the repository's [README.md](README.md) file.
Users: All package dependencies will be installed automatically when the command line app is installed from the package registry.
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment