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

Get "secrets" from something other than the operations repo #965

Open
2 tasks done
dshemetov opened this issue Aug 30, 2022 · 4 comments
Open
2 tasks done

Get "secrets" from something other than the operations repo #965

dshemetov opened this issue Aug 30, 2022 · 4 comments
Labels
help wanted question refactor Substantial projects to make the code do the same thing, better.

Comments

@dshemetov
Copy link
Contributor

dshemetov commented Aug 30, 2022

We'd like to make this repo self-contained and remove operations repo dependence. Some annoyances with the operations repo dependence:

Merging Dockerfiles:

What other work is there that needs doing?

Other repos using operations repo Dockerfiles (this is an organization-wide codebase search query):

@melange396
Copy link
Collaborator

i looked at a bunch of the undefx dependencies while i was doing #1000. i think you can find virtually all of it with this command: grep -r "undef-analysis\|undefx\|py3test" .

  • in addition to the removal from ci.yaml in Remove unused undefx depends from CI #935, you can also potentially remove references to the undefx repos or their location on the local filessystem from these files in this repo:

    • dev/local/install.sh
    • docs/epidata_development.md
    • docs/new_endpoint_tutorial.md
  • then in deploy.json, remove the line that matches this as well as the comment line above it:

    • {"type": "py3test"}
  • and finally under tests/ and integrations/ , remove lines from the many files that match these two:

    • # py3tester coverage target
    • __test_target__
  • a number of our other repositories also have traces of this stuff:

    • repos flu-contest and utils have references in their own deploy.json, in some *.md documentation files, and the "coverage target" stuff in their test files [ NOTE: im not sure how we use (or if we are still using) deploy.json ]
    • repo operations also has it in the setup script, ./dev/docker/python/assets/setup.sh
    • repos github-deploy-repo and nowcast have the above as well as a couple actual imports in source code

@krivard
Copy link
Contributor

krivard commented Dec 2, 2022

went looking to see if we had any github issues about moving away from github-deploy-repo and got briefly trapped here.

delphi-epidata-private was a fork that got shelved in late 2020. The intention was to have a parallel Epidata environment with no public access, so that we could store raw counts from DUA sources. Bringing back that effort is better off starting from scratch; we should archive the delphi-epidata-private repository.

www-epicast is an ILI crowdcasting tool that continues to run itself automatically every year, though the pandemic has essentially destroyed the relationship between ILI (fever+cough) and public health load. We should leave operations in place to continue to support www-epicast as it slowly rots from lack of maintenance.

flu-contest is an automated flu forecasting submission system. We should leave operations in place to continue to support flu-forecast as it slowly rots from lack of maintenance.

@melange396
Copy link
Collaborator

AFAICT, at this point in time, we are only using the operations repo for "secrets" stuff (ie, import delphi.operations.secrets as secrets, and that only really gets used in the src/acquisition/ and src/maintenance subdirectories (which is for periodically-run tasks (as opposed to long-running processes, like the API server)).

so this ~essentially "just" needs a new way to supply credentials to those jobs...

@melange396
Copy link
Collaborator

We should finalize #1212 and then we can move on to replacing delphi.operations.secrets with something else.

After that, "operations" stuff can come out of the environment and build stuff in:

  • dev/local/install.sh
  • dev/docker/python/setup.sh
  • dev/local/setup.cfg
  • .github/workflows/ci.yaml
  • .github/workflows/performance-tests.yml
  • .github/workflows/performance-tests-one-time.yml

Anything else that mentions "operations" seems to be in documentation/comments.

@melange396 melange396 changed the title Dependence on operations repo Get "secrets" from something other than the operations repo Jan 25, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted question refactor Substantial projects to make the code do the same thing, better.
Projects
None yet
Development

No branches or pull requests

3 participants