Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes, and Changes: Docker Setup, UI Enhancements, and Dependency Updates #914

Merged
merged 50 commits into from
May 6, 2024

Conversation

pmbinapps
Copy link

Add:

[#849] Configure sanchogov.tools sub-domain for the analytics service
[#849] Move Makefiles to scripts directory
[#849] Use a more recent version of nixpkgs
[#849] Add a registry for the analytics-dashboard module
[#849] Add a target to build a docker image for analytics-dashboard
[#849] Add necessary environment variables to the deployment configuration
[#849] Add analytics-dashboard service to Docker Compose
[#849] Add missing docker login commands to target
[#849] Add a secret to analytics-dashboard
Add a new Make target: ssh-client-setup
Squashed 'govtool/analytics-dashboard/' content from commit 9d116a9
Merge commit 'd90805282c6349b4e3f15efd4b73e3ebe7031eb0' as 'govtool/analytics-dashboard'
Merge pull request #868 from IntersectMBO/feat/849-configure-sanchogov.tools-sub-domain
Merge pull request #874 from IntersectMBO/feat/849-configure-sanchogov.tools-sub-domain
Merge pull request #882 from IntersectMBO/226-retire-dreps-who-delegate
Merge pull request #890 from IntersectMBO/change/880-change-terminology-drep-to-drep-explorer
Merge pull request #895 from IntersectMBO/fix/888-for-sole-voter-view-details-button-should-be-view-in-detail

Fix:

Fix show more button display
Fix typo in status-service introduced in #446
[#716] Change status pill colors
[#716] Center voting power
Fix broken docker compose
[#849] Add build arg for docker image for analytics-dashboard
Change way to add certs
Change way to generate certs
Delete unnecessary code
Change padding on buttons; remove LoadingButton and add isLoading prop
Chore/change sole voter on direct voter
Change name of loading button in stories
Show view details button only when type is DRep
Change padding on chip in DRepCard
Change naming of consts in button
Change px to smaller

Change:

[#217] Replace ternary operator with if statement
[#217] Use translations in menu items
[#216] Use Accordion from MUI to improve user experience
[#219] Reorder translations
[#219] Fetch data for DRep details page
[#220] Changes after CR
[#220] Fetch data for drep list
[#669] Update delegation card
[#864] Update modules
[#549] Change mocked data

Remove:

[#777] Remove pytest version constraint

NabinKawan and others added 30 commits April 22, 2024 10:37
This adds Terraform code that creats "participation" subdomains for each environments.
The exception is the beta environment, where DNS records are not handled with TF,
but need to be created manually.
Moved the Makefiles from various directories to the scripts directory
for better organization and consistency. Renamed the Makefiles
accordingly and updated the references within other files to use the new
paths in the scripts directory. This restructuring helps in streamlining
the build processes and eases maintenance tasks related to the make
files.
…for scripts and infrastructure to meet the requirements stated in the
terraform configuration

In this commit, changes have been made to the `flake.nix` file to
utilize a more recent version of nixpkgs for both scripts and
infrastructure. The modifications ensure that the scripts and
infrastructure align with the specified requirements in the terraform
configuration. Specifically, the nodePkgs import has been updated to
allow unfree packages, and the packages.scripts and packages.infra
sections have been adjusted to utilize the nodePkgs instead of
defaultPkgs. This adjustment guarantees that the scripts and
infrastructure components are in line with the necessary configurations,
enhancing compatibility and meeting the user story's demands.
A registry has been incorporated for the analytics-dashboard module
within the Terraform configuration. This modification introduces a new
module named "govtool-ecr-analytics-dashboard" sourced from
"./modules/ecr" with the repository name set to "analytics-dashboard."
By including this new module, the analytics-dashboard component is now
integrated into the infrastructure setup, aligning with the user story's
objective of configuring the sanchogov.tools sub-domain for the
analytics service.
Included a target in the Makefile to facilitate the creation of a Docker
image for the analytics-dashboard component. This addition enables the
generation and pushing of the analytics-dashboard Docker image as part
of the deployment process. By introducing this functionality, the build
process now encompasses the analytics-dashboard, supporting the user
story's aim of configuring the sanchogov.tools sub-domain for the
analytics service.
…ation

Include essential environment variables in the deployment configuration
for beta, dev, staging, and test environments. New environment variables
such as `NEXT_PUBLIC_GA4_PROPERTY_ID`, `GA_CLIENT_EMAIL`,
`GA_PRIVATE_KEY`, `GOOGLE_APPLICATION_CREDENTIALS`,
`SENTRY_IGNORE_API_RESOLUTION_ERROR`, and `NEXT_PUBLIC_API_URL` have
been added to the workflow files, enabling the successful deployment and
integration of the analytics-dashboard submodule. By introducing these
environment variables, the deployment process is now equipped with
essential information required for analytics functionality, aligning
with the user story's goal of configuring the `sanchogov.tools`
sub-domain for the analytics service.
Include a new service, analytics-dashboard, in the Docker Compose
configuration file located at
scripts/govtool/config/templates/docker-compose.yml.tpl. This addition
introduces the analytics-dashboard service to the existing setup,
allowing the service to be deployed as part of the infrastructure. The
analytics-dashboard service is configured with necessary environment
variables such as NEXT_PUBLIC_GA4_PROPERTY_ID,
GOOGLE_APPLICATION_CREDENTIALS, GA_CLIENT_EMAIL, GA_PRIVATE_KEY,
SENTRY_IGNORE_API_RESOLUTION_ERROR, and NEXT_PUBLIC_API_URL to enable
proper functionality. The service's health is monitored through defined
health check parameters, ensuring its stability within the deployment
environment. By integrating the analytics-dashboard service into the
Docker Compose setup, the infrastructure aligns with the user story's
goal of configuring the sanchogov.tools sub-domain for the analytics
service.
In this commit, additional docker login commands were incorporated into
the target in the `common.mk` file located at `scripts/govtool`. These
new commands facilitate the authentication process for various
repository URLs, ensuring access to the necessary Docker images during
the build and deployment phases. With these additions, the script now
covers the login requirements for the `analytics-dashboard`, `backend`,
`frontend`, `metadata-validation`, and `status-service` repositories.
Introduce a secret configuration for the analytics-dashboard service
within the Docker Compose setup. This modification includes the addition
of the `google-credentials.json` secret to enhance the security and
integrity of sensitive information utilized by the service. By
incorporating the secret, the analytics-dashboard service gains access
to the specified Google credentials, ensuring secure interactions with
external services and APIs, as mandated by the user story's requirement
to configure the `sanchogov.tools` sub-domain for the analytics service.
This target checks if $CI env variable is set to true, which indicates that the code
is executed in a CI runner, and sets up SSH client config to enable reusing of open
SSH connections. This should resolve SSH connections issues observed during deployments
git-subtree-dir: govtool/analytics-dashboard
git-subtree-split: 9d116a9c785edde019a243cee950eb4e476c633f
…vtools-sub-domain-for-the-analytics-service

[#849] Configure sanchogov.tools sub-domain for the analytics service
In this commit, the docker-compose file was modified to include the
`google-credentials.json` file as a secret volume. This change was made
to ensure that the necessary Google credentials are available for the
analytics service running on the `participation.sanchogov.tools`
sub-domain. Including the `google-credentials.json` file in the
docker-compose configuration is crucial for the proper functioning of
the analytics dashboard service.
In this commit, an argument (`NEXT_PUBLIC_API_URL`) was added to the
`Dockerfile` of the analytics-dasboard service. This change is necessary
to dynamically specify the API URL that the dashboard should connect to.
By introducing this build arg, the analytics dashboard service can now
adapt to different environments, like the
`participation.sanchogov.tools` sub-domain, as part of configuring the
analytics service under one domain tree.
…vtools-sub-domain-for-the-analytics-service

Fix configuration for analytics dashboard
…one-item-is-shown-show-more-button-is-also-shown-and-disappears-when-clicked

fix/861-drep-explorer-when-one-item-is-shown-show-more-button-is-also-shown-and-disappears-when-clicked
…l-defects

fix/716-drep-explorer-visual-defects
…o 226-retire-dreps-who-delegate-to-another-drep
vercia and others added 16 commits April 30, 2024 11:38
…te-to-another-drep

226 retire dreps who delegate to another drep
…o change/880-change-terminology-of-sole-voter-to-direct-voter
…gy-of-sole-voter-to-direct-voter

change/880-change-terminology-of-sole-voter-to-direct-voter
…o fix/888-for-sole-voter-view-details-button-should-be-hidden
…-details-button-should-be-hidden

Fix/888 for sole voter view details button should be hidden
@pmbinapps pmbinapps changed the title Analytics Service Configuration, Fixes, and Changes: Docker Setup, UI Enhancements, and Dependency Updates Fixes, and Changes: Docker Setup, UI Enhancements, and Dependency Updates May 6, 2024
@pmbinapps pmbinapps merged commit 69a48fa into test May 6, 2024
3 of 13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants