diff --git a/SUMMARY.md b/SUMMARY.md index 483b211c..d37cdf19 100644 --- a/SUMMARY.md +++ b/SUMMARY.md @@ -256,31 +256,32 @@ * [Interoperability](social-registry/functionality/interoperability.md) * [Monitoring and Reporting](social-registry/functionality/monitoring-and-reporting/README.md) * [System Logs](social-registry/functionality/monitoring-and-reporting/system-logs.md) - * [Development](social-registry/development/README.md) - * [Install OpenG2P Package on Linux System](social-registry/development/install-openg2p-package-on-linux-system.md) - * [Odoo Modules](social-registry/development/odoo-modules/README.md) - * [ODK App User Mapping](social-registry/development/odoo-modules/odk-app-user-mapping.md) - * [Upcoming Features](social-registry/development/upcoming-features/README.md) - * [Fayda ID Integration](social-registry/development/upcoming-features/fayda-id-integration.md) - * [Verifiable Credentials Issuance](social-registry/development/upcoming-features/verifiable-credentials-issuance.md) - * [Benefit Targeting Methods](social-registry/development/upcoming-features/score-computation.md) - * [Record Revision History](social-registry/development/upcoming-features/record-revision-history.md) - * [Domain Specific Registries](social-registry/development/upcoming-features/domain-specific-registries.md) - * [Single Sign-On](social-registry/development/upcoming-features/single-sign-on.md) - * [Tokenisation](social-registry/development/upcoming-features/tokenisation.md) - * [Search - OpenSearch](social-registry/development/upcoming-features/search-opensearch.md) - * [Audit Log - Advanced](social-registry/development/upcoming-features/audit-log-advanced.md) - * [Attestation](social-registry/development/upcoming-features/attestation.md) - * [Consent](social-registry/development/upcoming-features/consent.md) - * [SPAR Update for offline enumerations](social-registry/development/upcoming-features/spar-update-for-offline-enumerations.md) - * [Self Service Registration Portal](social-registry/development/upcoming-features/self-service-registration-portal.md) - * [Unique Reference ID](social-registry/development/upcoming-features/unique-reference-id.md) + * [Fayda ID Integration](social-registry/functionality/fayda-id-integration.md) + * [Verifiable Credentials Issuance](social-registry/functionality/verifiable-credentials-issuance.md) + * [Benefit Targeting Methods](social-registry/functionality/score-computation.md) + * [Record Revision History](social-registry/functionality/record-revision-history.md) + * [Domain Specific Registries](social-registry/functionality/domain-specific-registries.md) + * [Single Sign-On](social-registry/functionality/single-sign-on.md) + * [Tokenisation](social-registry/functionality/tokenisation.md) + * [Search - OpenSearch](social-registry/functionality/search-opensearch.md) + * [Audit Log - Advanced](social-registry/functionality/audit-log-advanced.md) + * [Attestation](social-registry/functionality/attestation.md) + * [Consent](social-registry/functionality/consent.md) + * [SPAR Update for offline enumerations](social-registry/functionality/spar-update-for-offline-enumerations.md) + * [Self Service Registration Portal](social-registry/functionality/self-service-registration-portal.md) + * [Unique Reference ID](social-registry/functionality/unique-reference-id.md) + * [Versions](social-registry/versions.md) * [Deployment](social-registry/deployment/README.md) * [Domain names and Certificates](social-registry/deployment/domain-names-and-certificates.md) * [Helm Charts](social-registry/deployment/helm-charts.md) * [Install Odoo Modules](social-registry/deployment/install-odoo-modules.md) - * [Technology Stack](social-registry/technology-stack.md) - * [Versions](social-registry/versions.md) + * [Developer Zone](social-registry/development/README.md) + * [Technology Stack](social-registry/development/technology-stack.md) + * [📘 Developer Install of OpenG2P Package on Linux](social-registry/development/developer-install-of-openg2p-package-on-linux.md) + * [📘 Docker Packaging Guide](social-registry/development/docker-packaging-guide.md) + * [📘 Helm Packaging Guide](social-registry/development/helm-packaging-guide.md) + * [Odoo Modules](social-registry/development/odoo-modules/README.md) + * [ODK App User Mapping](social-registry/development/odoo-modules/odk-app-user-mapping.md) * [SPAR](spar/README.md) * [Features](spar/features/README.md) * [SPAR Mapper](spar/features/spar-mapper.md) diff --git a/social-registry/development/install-openg2p-package-on-linux-system.md b/social-registry/development/developer-install-of-openg2p-package-on-linux.md similarity index 98% rename from social-registry/development/install-openg2p-package-on-linux-system.md rename to social-registry/development/developer-install-of-openg2p-package-on-linux.md index 7924792b..ec8226ee 100644 --- a/social-registry/development/install-openg2p-package-on-linux-system.md +++ b/social-registry/development/developer-install-of-openg2p-package-on-linux.md @@ -2,7 +2,7 @@ description: Installation of Social Registry on developer machine --- -# Install OpenG2P Package on Linux System +# 📘 Developer Install of OpenG2P Package on Linux The guide provides steps to install the OpenG2P package on a laptop/desktop running on Linux system. Developers can run the entire OpenG2P package on their machines. @@ -255,5 +255,5 @@ db_password = your_database_password cd /opt/odoo/custom-addons/ pip3 install -r requirements.txt ``` -4. Add addons directory path to the _odoo.conf_ file in **addons\_path** parameter, mentioned in [point 7](install-openg2p-package-on-linux-system.md#id-7.-configure-odoo). +4. Add addons directory path to the _odoo.conf_ file in **addons\_path** parameter, mentioned in [point 7](developer-install-of-openg2p-package-on-linux.md#id-7.-configure-odoo). 5. For the Social Registry to function properly, your add-ons should include the packages listed below.[https://github.com/OpenG2P/openg2p-packaging/blob/main/packaging/packages/social-registry/17.0-develop.txt](https://github.com/OpenG2P/openg2p-packaging/blob/main/packaging/packages/social-registry/17.0-develop.txt) diff --git a/social-registry/development/docker-packaging-guide.md b/social-registry/development/docker-packaging-guide.md new file mode 100644 index 00000000..7599c9a3 --- /dev/null +++ b/social-registry/development/docker-packaging-guide.md @@ -0,0 +1,35 @@ +--- +description: How to create SR Docker Package +--- + +# 📘 Docker Packaging Guide + +## Concepts + +### Package file and Github workflow + +Dockers are created via Github workflows by triggering the same manually when required. Dockers may be created manually as well if required. The contents of the Docker are listed in a [package file](https://github.com/OpenG2P/openg2p-packaging/tree/main/packaging/packages/) available in the [openg2p-packaging ](https://github.com/OpenG2P/openg2p-packaging)repo. This package file is read by the [package\_docker.yml](https://github.com/OpenG2P/openg2p-packaging/blob/main/.github/workflows/package\_docker.yml) workflow. This workflow creates the Docker and pushes it to the Docker Hub. The name and tag of the Docker are specified as the first line in the package file followed by the base version of the Odoo that is used to create the Docker. See [example](https://github.com/OpenG2P/openg2p-packaging/blob/main/packaging/packages/social-registry/1.3.1.txt). + +The package may contain private repositories, in which case, the token to clone the repositories must be set in the respective repositories. + +Versions of all repositories that are used to create the Docker are specified in the package file. For Dockers that are "frozen" it is assumed that all versions of repositories are frozen as well (i.e. tagged). + +### Creating tokens to clone private repositories + +1. Create a new token for OpenG2P Bot user and add it to the private repo with the name `OPENG2P_BOT_GITHUB_PAT`. This token must have read permissions to the repository +2. To create this token you will have to log in to Github as OpenG2P Bot user. + +### Tagging the repositories + +1. For private repositories give Write permission to OpenG2P Bot user on Github (under Settings --> Collaborators and Teams). +2. Run the `tag.yml` workflow using Github Actions. The workflow checks if there are any changes w.r.t. to previous version specified. If there are no changes the workflow fails with a message and new tag is not created. + +### Creating Docker package + +1. Create a package file for the new version that you want to create. The name of the package file should reflect the new version. E.g. `1.3.1.txt`. +2. Update the first line in the package file for the new version. +3. Inspect the contents of the package file on which versions of repositories need to be packed in this Docker. +4. Make sure the repositories are tagged with the versions matching in the package file. See above section on tagging. +5. Add this version in the Github [workflow file ](https://github.com/OpenG2P/openg2p-packaging/blob/main/.github/workflows/package\_docker.yml)so that it appears as a drop-down while running the workflow. +6. Trigger Docker build and push using the Github Actions. +7. Verify that the new Docker has been pushed on Docker Hub. diff --git a/social-registry/development/helm-packaging-guide.md b/social-registry/development/helm-packaging-guide.md new file mode 100644 index 00000000..d05228cf --- /dev/null +++ b/social-registry/development/helm-packaging-guide.md @@ -0,0 +1,2 @@ +# 📘 Helm Packaging Guide + diff --git a/social-registry/technology-stack.md b/social-registry/development/technology-stack.md similarity index 100% rename from social-registry/technology-stack.md rename to social-registry/development/technology-stack.md diff --git a/social-registry/development/upcoming-features/README.md b/social-registry/development/upcoming-features/README.md deleted file mode 100644 index 9a624b4a..00000000 --- a/social-registry/development/upcoming-features/README.md +++ /dev/null @@ -1,2 +0,0 @@ -# Upcoming Features - diff --git a/social-registry/development/upcoming-features/attestation.md b/social-registry/functionality/attestation.md similarity index 100% rename from social-registry/development/upcoming-features/attestation.md rename to social-registry/functionality/attestation.md diff --git a/social-registry/development/upcoming-features/audit-log-advanced.md b/social-registry/functionality/audit-log-advanced.md similarity index 100% rename from social-registry/development/upcoming-features/audit-log-advanced.md rename to social-registry/functionality/audit-log-advanced.md diff --git a/social-registry/development/upcoming-features/consent.md b/social-registry/functionality/consent.md similarity index 100% rename from social-registry/development/upcoming-features/consent.md rename to social-registry/functionality/consent.md diff --git a/social-registry/development/upcoming-features/domain-specific-registries.md b/social-registry/functionality/domain-specific-registries.md similarity index 100% rename from social-registry/development/upcoming-features/domain-specific-registries.md rename to social-registry/functionality/domain-specific-registries.md diff --git a/social-registry/development/upcoming-features/fayda-id-integration.md b/social-registry/functionality/fayda-id-integration.md similarity index 100% rename from social-registry/development/upcoming-features/fayda-id-integration.md rename to social-registry/functionality/fayda-id-integration.md diff --git a/social-registry/development/upcoming-features/record-revision-history.md b/social-registry/functionality/record-revision-history.md similarity index 78% rename from social-registry/development/upcoming-features/record-revision-history.md rename to social-registry/functionality/record-revision-history.md index 0ed5f219..25be52ac 100644 --- a/social-registry/development/upcoming-features/record-revision-history.md +++ b/social-registry/functionality/record-revision-history.md @@ -7,7 +7,7 @@ description: WORK IN PROGRESS Any changes/updates to records in the Registry have to be captured by the system. Admins must be able to see the information associated with a registry record on previous dates. Admins must also be able to generate reports of aggregate data for an earlier period. For example, the total number of farmers with more than 10 acres of land as of Dec 2023. {% hint style="info" %} -Revision History is not the same as [Audit Logs](../../features/audit-log.md) or [System Log](../../../monitoring-and-reporting/logging.md). +Revision History is not the same as [Audit Logs](../features/audit-log.md) or [System Log](../../monitoring-and-reporting/logging.md). {% endhint %} ## Functionality @@ -20,20 +20,20 @@ Revision History is not the same as [Audit Logs](../../features/audit-log.md) or ## Design -* The current design involves [Reporting Framework](../../../monitoring-and-reporting/reporting-framework/). Social Registry deployment is packaged with Reporting Framework installation, which is configured to capture all the changes to the registry records and send them to OpenSearch. +* The current design involves [Reporting Framework](../../monitoring-and-reporting/reporting-framework/). Social Registry deployment is packaged with Reporting Framework installation, which is configured to capture all the changes to the registry records and send them to OpenSearch. * All changes to records get captured as separate documents under the OpenSearch Index including the timestamp of change. * This makes it easy to query for records or data at a particular point in time, while the main Social Registry continues to maintain the latest data. * Dashboards and Reports can be generated easily on OpenSearch Dashboards. A reference dashboard for revision history is available (TODO). -* By default, all the fields and their changes are captured, but the [reporting framework configuration](../../../monitoring-and-reporting/reporting-framework/) allows not to capture PII data. +* By default, all the fields and their changes are captured, but the [reporting framework configuration](../../monitoring-and-reporting/reporting-framework/) allows not to capture PII data. * Social Registry can generate a unique Registry ID for each record. That registry ID can be used to query for changes related to a particular record. * If you are using a customized social registry that involves multiple tables that store additional data, and are _related_ to the main _res\_partner_ table (via foreign key), then you are required to create separate OpenSearch connectors for all these tables. - * In the connector configuration of these adjunct tables, use the [DynamicNewField](../../../monitoring-and-reporting/reporting-framework/user-guides/connector-creation-guide.md) SMT to add the above-mentioned Registry ID field to these adjunct tables, so that changes to these adjunct tables can also be queried using the same registry ID. + * In the connector configuration of these adjunct tables, use the [DynamicNewField](../../monitoring-and-reporting/reporting-framework/user-guides/connector-creation-guide.md) SMT to add the above-mentioned Registry ID field to these adjunct tables, so that changes to these adjunct tables can also be queried using the same registry ID. * When a record is deleted from the Social Registry DB, there will be no change in revision history on OpenSearch. -* Refer to [Reporting guides](../../../monitoring-and-reporting/reporting-framework/#creating-dashboards) for further configuration. +* Refer to [Reporting guides](../../monitoring-and-reporting/reporting-framework/#creating-dashboards) for further configuration. ## User stories -* Update a record in the Social Registry via any [update mechanism](../../features/registry-update-mechanisms.md), say through the UI (odoo-based), or the APIs, etc. +* Update a record in the Social Registry via any [update mechanism](../features/registry-update-mechanisms.md), say through the UI (odoo-based), or the APIs, etc. * Check that the changes are reflected on OpenSearch with appropriate timestamp (TODO: elaborate.) ## Other Approaches diff --git a/social-registry/development/upcoming-features/score-computation.md b/social-registry/functionality/score-computation.md similarity index 100% rename from social-registry/development/upcoming-features/score-computation.md rename to social-registry/functionality/score-computation.md diff --git a/social-registry/development/upcoming-features/search-opensearch.md b/social-registry/functionality/search-opensearch.md similarity index 100% rename from social-registry/development/upcoming-features/search-opensearch.md rename to social-registry/functionality/search-opensearch.md diff --git a/social-registry/development/upcoming-features/self-service-registration-portal.md b/social-registry/functionality/self-service-registration-portal.md similarity index 100% rename from social-registry/development/upcoming-features/self-service-registration-portal.md rename to social-registry/functionality/self-service-registration-portal.md diff --git a/social-registry/development/upcoming-features/single-sign-on.md b/social-registry/functionality/single-sign-on.md similarity index 100% rename from social-registry/development/upcoming-features/single-sign-on.md rename to social-registry/functionality/single-sign-on.md diff --git a/social-registry/development/upcoming-features/spar-update-for-offline-enumerations.md b/social-registry/functionality/spar-update-for-offline-enumerations.md similarity index 100% rename from social-registry/development/upcoming-features/spar-update-for-offline-enumerations.md rename to social-registry/functionality/spar-update-for-offline-enumerations.md diff --git a/social-registry/development/upcoming-features/tokenisation.md b/social-registry/functionality/tokenisation.md similarity index 100% rename from social-registry/development/upcoming-features/tokenisation.md rename to social-registry/functionality/tokenisation.md diff --git a/social-registry/development/upcoming-features/unique-reference-id.md b/social-registry/functionality/unique-reference-id.md similarity index 100% rename from social-registry/development/upcoming-features/unique-reference-id.md rename to social-registry/functionality/unique-reference-id.md diff --git a/social-registry/development/upcoming-features/verifiable-credentials-issuance.md b/social-registry/functionality/verifiable-credentials-issuance.md similarity index 100% rename from social-registry/development/upcoming-features/verifiable-credentials-issuance.md rename to social-registry/functionality/verifiable-credentials-issuance.md diff --git a/social-registry/versions.md b/social-registry/versions.md index 2d85c6b6..4df781a2 100644 --- a/social-registry/versions.md +++ b/social-registry/versions.md @@ -12,4 +12,4 @@ description: Social Registry versions Repository on Docker Hub: [`social-registry-odoo-package`](https://hub.docker.com/repository/docker/openg2p/openg2p-social-registry-odoo-package/general) -
VersionCreated onDescription
1.2.021 Aug 2024Pegging a version as of this date for country deployments
1.2.124 Aug 2024Pegging a version as of this date for country deployments
1.2.227 Aug 2024Bug fixes on 1.2.1 and pegging the same as a patch version.
1.2.304 Sep 2024Intermediate version - does not work. QA failed.
1.3.010 Sep 2024Major changes w.r.t reorganisation of modules. Number of repos reduced. No change in functionality. See package file.
1.3.110 Sep 2024Fixed few bugs in Community addons.
+
TagCreated onDescription
1.2.021 Aug 2024Pegging a version as of this date for country deployments
1.2.124 Aug 2024Pegging a version as of this date for country deployments
1.2.227 Aug 2024Bug fixes on 1.2.1 and pegging the same as a patch version.
1.2.304 Sep 2024Intermediate version - does not work. QA failed.
1.3.010 Sep 2024Major changes w.r.t reorganisation of modules. Number of repos reduced. No change in functionality. See package file.
1.3.110 Sep 2024Fixed few bugs in Community addons.