Links

7. Bootstrap DIGIT

Post-deployment, now the application is accessible from the configured domain.
To try out employee login, let us create a sample tenant, city, and user to log in and assign the LME employee role through the seed script.
  1. 1.
    Perform the kubectl port-forwarding of the egov-user service running from the Kubernetes cluster to your localhost. This provides access to egov-user service directly and allows users to interact with the API directly.
kubectl port-forward svc/egov-user 8080:8080 -n egov
Output:
Forwarding from 127.0.0.1:8080 -> 8080
Forwarding from [::1]:8080 -> 8080
2. Seed the sample data
  • Ensure you have the postman to run the following seed data api, if not Install postman on your local
  • Import the following postman collection into the postman and run it, this will have the seed data that enable sample test users and localisation data.
Execute the below commands to test the Kubernetes operations through kubectl from your local machine.
#get the pods running in the cluster
kubectl get pods -n egov
Output:
NAME READY STATUS RESTARTS AGE
citizen-79cf89659c-8glf4 1/1 Running 0 14d
egov-accesscontrol-78b78dddb9-tfbkf 1/1 Running 0 21d
egov-enc-service-574cd7b5b5-hmhh4 1/1 Running 0 36d
egov-idgen-84954b565b-xsnqj 1/1 Running 0 45d
egov-indexer-5f5fbb6f4b-58rtm 1/1 Running 0 43d
egov-localization-6cc5977bb9-gm7f9 1/1 Running 0 27d
egov-mdms-service-65d6d65d8c-t85d9 1/1 Running 0 21d
egov-user-6676968d76-8n6t6 1/1 Running 0 29d
egov-workflow-v2-5cdb96bcf5-dcgmf 1/1 Running 0 36d
employee-749464fbfb-tptlh 1/1 Running 0 14d
nginx-ingress-controller-b9678869c-mkslb 1/1 Running 0 49d
pgr-services-b9f4ffdbf-5h5kd 1/1 Running 0 38d
zuul-788bf8cd8b-9nxfl 1/1 Running 0 41d
#Delete the pods so that it gets restarted automatically
kubectl delete pods zuul-788bf8cd8b-9nxfl egov-workflow-v2-5cdb96bcf5-dcgmf pgr-services-b9f4ffdbf-5h5kd -n egov
Output:
pod "zuul-788bf8cd8b-9nxfl" deleted
pod "egov-workflow-v2-5cdb96bcf5-dcgmf" deleted
pod "pgr-services-b9f4ffdbf-5h5kd" deleted
You have successfully completed the DIGIT Infra, deployment setup and installed a DIGIT - PGR module.
Use the below link in the browser -
digit.try.com/employee
Use the below credentials to login into the complaint section
Username: GRO
City: CITYA

DIGIT Deployment Assessment

By now we have successfully completed the DIGIT setup on the cloud, use the URL that you mentioned in your env.yaml.
Eg: https://mysetup.digit.org and create a grievance to ensure the PGR module deployed is working fine. Refer to the below product documentation for the steps.
Credentials:
  1. 1.
    Citizen: You can use your default mobile number (9999999999) to sign in using the default Mobile OTP 123456.
  2. 2.
    Employee: Username: GRO and password: [email protected]
Post grievance creation and assignment of the same to LME, capture the screenshot of the same and share it to ensure your setup is working fine.

Destroy Cluster

Post validating the PGR functionality share the API response of the following request to assess the correctness of successful DIGIT PGR Deployment.
Finally, clean up the DIGIT Setup if you wish, using the following command. This will delete the entire cluster and other cloud resources that were provisioned for the DIGIT Setup.
To destroy previously-created infrastructure using terraform, run the command below:
  1. 1.
    ELB is not deployed via Terraform. ELB has created at deployment time by the setup of Kubernetes Ingress. This has to be deleted manually by deleting the ingress service.
    • kubectl delete deployment nginx-ingress-controller -n <namespace>
    • kubectl delete svc nginx-ingress-controller -n <namespace>
      Note: Namespace can be one of egov or jenkins.
  2. 2.
    Delete S3 buckets manually from the AWS console and also verify if ELB got deleted.
    • In case of if ELB is not deleted, you need to delete ELB from the AWS console.
  3. 3.
    Run terraform destroy.
cd DIGIT-DevOps/infra-as-code/terraform/my-digit-eks
terraform destroy

Conclusion

All done, we have successfully created infra on the cloud, deployed DIGIT, bootstrapped DIGIT, performed a transaction on PGR and finally destroyed the cluster.
All content on this page by eGov Foundation is licensed under a Creative Commons Attribution 4.0 International License.