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

Document and test devops documentation for GO services #85

Open
kltm opened this issue Dec 16, 2023 · 2 comments
Open

Document and test devops documentation for GO services #85

kltm opened this issue Dec 16, 2023 · 2 comments
Assignees

Comments

@kltm
Copy link
Member

kltm commented Dec 16, 2023

Project link

https://github.com/orgs/geneontology/projects/146

Project description

TL;DR: Developers at all levels should be able to test code, put out new code releases, and update data using our documentation.

Over the last year, with the help of @abessiari, we have built up a set of DevOps tools and scripts to setup and service our major components, namely the GO API, the RDF endpoint, and AmiGO/GOlr.

This development work is wrapping soon (end of January) and we want to make sure that this new infrastructure is fully documented to meet the following criteria and use cases

  • Is usable for developers who have minimal experience with DevOps
  • Introduces the broad concepts of our DevOps
    • Terraform and workspaces (via S3 buckets)
      • Our naming conventions
    • How we refresh and test our services for a data release
      • Services not updated, but new one out with fresh data and old one destroyed
      • New instance up at patterned URL; test; switch Cloudflare/DNS; old instance down
  • Given the context above, can be used by a developer to
    • Deploy to a fresh instance at a new random domain for testing/development of software
    • Deploy a fresh instance to switch over to on a data release
    • TODO: Deploy a fresh instance with security updates

(Note that we also should have functional Docker images for local development, but that may be outside the scope of these Terraform-related docs.)

Work done so far: @abessiari has done initial documentation; @sierra-moxon did a pass on GO API, getting it ready for production; @kltm and @dustine32 started a more generalized version of the documentation, but did not complete it.

Useful resources:

This documentation, out of necessity, may have to touch on topics like the release pipeline, credential distribution, DNS/Cloudflare, and the cert server.

PI

Chris

Product owner (PO)

Seth

Technical lead (TL)

Seth

Other personnel (OP)

Patrick, Sierra, Dustin

Technical specs

n/a

Other comments

I was going to originally file these items under #19, but thought that it would be more useful and understandable as it's own "project", rather than a set of tickets in an ongoing project.

@kltm kltm added Needs LA approval Needs final approval from the Lead Architect Needs PM approval Needs final approval from the Project Manager Needs tech doc Needs PI Needs PO Needs TL labels Dec 16, 2023
@kltm kltm removed Needs LA approval Needs final approval from the Lead Architect Needs tech doc Needs PI Needs PO Needs TL labels Dec 16, 2023
@kltm
Copy link
Member Author

kltm commented Dec 16, 2023

@pgaudet This would be a mostly a @pkalita-lbl project, as we need to make progress before the end of January (while feedback can easily be given) and he is a good target for the docs; no other people would really need to be brought in, besides clarification of current documentation and test of said docs. I was going to originally slide this in under the "needful software" project, but thought it would be nice to have it surfaced on its own. I've talked to @cmungall about having @pkalita-lbl for this span and got thumbs up.

@pgaudet pgaudet removed the Needs PM approval Needs final approval from the Project Manager label Jan 10, 2024
@pgaudet pgaudet moved this from Hopper to Active in Project Metadata Overview Jan 10, 2024
@pgaudet pgaudet assigned kltm and unassigned pgaudet Feb 5, 2024
@pgaudet pgaudet moved this from Active to Resourcing (waiting for capacity) in Project Metadata Overview Feb 14, 2024
@kltm kltm moved this from Resourcing (waiting for capacity) to Active in Project Metadata Overview Feb 27, 2024
@kltm
Copy link
Member Author

kltm commented Feb 27, 2024

Given that we are punting the software get-together for the moment, where a major push to closing this would have taken place, and the fact that the iron is no longer particularly hot, @pgaudet given thumbs up to pecking away at this as is convenient.

@pgaudet pgaudet moved this from Active to Resourcing (waiting for capacity) in Project Metadata Overview Apr 18, 2024
@pgaudet pgaudet moved this from Resourcing (waiting for capacity) to Active in Project Metadata Overview Apr 18, 2024
@pgaudet pgaudet moved this from Active to Resourcing (waiting for capacity) in Project Metadata Overview Apr 18, 2024
@kltm kltm mentioned this issue Aug 21, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Resourcing (waiting for capacity)
Development

No branches or pull requests

2 participants