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

EPIC: IronBank LeapfrogAI Hardening #750

Open
1 of 6 tasks
justinthelaw opened this issue Jul 10, 2024 · 6 comments
Open
1 of 6 tasks

EPIC: IronBank LeapfrogAI Hardening #750

justinthelaw opened this issue Jul 10, 2024 · 6 comments
Assignees
Labels
EPIC ⚔️ EPIC issue to consolidate several sub-issues

Comments

@justinthelaw
Copy link
Contributor

justinthelaw commented Jul 10, 2024

Description

Creating hardened IronBank "flavors" for different images that make up the LeapfrogAI stack provides the following benefits for all LeapfrogAI end-users:

  1. Obtain a Certificate to Field (CtF) for deployment of LeapfrogAI to PlatformONE's PaaS
  2. Gain reciprocity for other deployment platforms that accept the PlatformONE ATO
  3. Enable "easier" ATO on other programs that accept IronBank images as drop-in replacements
  4. Provide another open-source, hardened image option beyond Chainguard and upstream vendor containers

Acceptance Criteria

The following spikes1 and features must be closed or completed in order to complete this EPIC:

Tasks:

  1. dependencies documentation enhancement
    justinthelaw
  2. dependencies documentation enhancement ui
    andrewrisse justinthelaw
  3. dependencies spike
    CollectiveUnicorn
  4. dependencies spike
    justinthelaw
  5. dependencies spike
    justinthelaw
  6. enhancement spike
    justinthelaw

Additional Context

Potential Blockers

The following is a running list of potential blockers, in the form of EPICs and/or issues, that could slowdown and/or disrupt the progress of this EPIC:

Dependent Issues

The following is a running list of other EPICs and/or issues that are dependent on the closure of this EPIC:

Closed (Blocker Removed):

LeapfrogAI Images

The base image(s) include the "upstream" variant we use today, and the "possible IronBank" drop-in we could use for container re-base testing, if it exists.

  1. LeapfrogAI API

  2. (Bitnami) Supabase Operator2

  3. Migrations (upstream) (possible IronBank)

  4. LeapfrogAI UI

  5. vLLM backend (upstream) (possible IronBank) (possible IronBank, but needs updating)

  6. LLaMA-CPP-Python backend (upstream) (possible IronBank)

  7. Text-Embeddings backend (upstream) (possible IronBank)

  8. Whisper (upstream) (possible IronBank)

Resources and Links

Additional POCs

Defense Unicorns Product: @mjnagel @cmwylie19

Defense Unicorns Delivery: @gscallon @vanakema @CodyDamewood @phillip-record @americanthinker

Footnotes

  1. All spikes related to this EPIC require the creation of a feat: issue after spike findings are reported

  2. Bitnami's Supabase Helm deployment is highly-coupled and there is a lack of the specific Bitnami-flavor images on the IronBank/Bitnami sub-project. Please see the spike required to confirm which IronBank images can be drop-in replacements for these Bitnami-flavor images.

@justinthelaw
Copy link
Contributor Author

Submitted onboarding document/questionnaire with request for the creation of all repos as outlined in the EPIC description above, with repo pattern opensource/defenseunicorns/leapfrogai/<optional sub-directory>/<container name>

@justinthelaw
Copy link
Contributor Author

justinthelaw commented Aug 5, 2024

We have created a new Repo1 LeapfrogAI Project.

Below is a recommended (DRAFT) RACI for the development and maintenance of each hardened container:

IronBank Container Responsible1 Accountable2 Consulted3 Informed4
api @barronstone @justinthelaw + @YrrepNoj @YrrepNoj @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
ui @barronstone @andrewrisse + @justinthelaw @YrrepNoj @andrewrisse @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
supabase5 @barronstone @CollectiveUnicorn + @justinthelaw @YrrepNoj @CollectiveUnicorn @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
migrations6 @barronstone @justinthelaw + @YrrepNoj @YrrepNoj @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
vllm @barronstone @justinthelaw + @YrrepNoj @YrrepNoj @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
llama-cpp-python @barronstone @justinthelaw + @YrrepNoj @YrrepNoj @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
whisper @barronstone @justinthelaw + @YrrepNoj @YrrepNoj @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops
text-embeddings @barronstone @justinthelaw + @YrrepNoj @YrrepNoj @defenseunicorns/mission-ops-team @defenseunicorns/delivery @defenseunicorns/mission-ops

Footnotes

  1. The person or team who does the work. There should only be one responsible person or team per task. E.g., Justin Law + Gregory Horvath

  2. The person who owns the work and is responsible for its completion. They may not be the person doing the work, but they are ultimately responsible if it's not completed. E.g., Barron Stone

  3. The person or people who provide input or knowledge before the work can be done and signed off on. They may use their subject knowledge to suggest changes or improvements. E.g., Jonathan Perry

  4. The person or people who need to be kept up to date on the progress, process execution, and quality of the work. They may also need to be informed of challenges and setbacks. E.g., Mission Operations Value Stream

  5. Drop-in replacement spikes and development for the following containers and/or base images (11 total): GoTrue, JWT-CLI, Kubectl, OS-shell, Postgrest, Kong, Supabase-Postgres, Supabase-Postgres-Meta, Supabase-Realtime, Supabase-Storage, Supabase-Studio

  6. Drop-in replacement spikes and development for migration for the following containers and/or base images (3 total): Supabase, API, and UI

@gscallon
Copy link
Contributor

gscallon commented Aug 7, 2024

Access update: @vanakema and I have received access to the Defense Unicorns and Leapfrog groups within Iron Bank and on the VAT

@andrewrisse
Copy link
Contributor

blocked until presentation @justinthelaw

@justinthelaw
Copy link
Contributor Author

@gregclark-defenseunicorns gregclark-defenseunicorns removed the blocked 🛑 Something needs to happen before this issues is worked label Aug 26, 2024
@justinthelaw
Copy link
Contributor Author

justinthelaw commented Sep 4, 2024

Updates to this EPIC:

  1. Due to Bitnami's end-of-life for Supabase Bitnami charts and containers, the Bitnami/Supabase task may change in scope depending on the results of this issue
  2. The registry1 flavored API is now merged into the main branch of LeapfrogAI, which includes the creation of upstream flavors by default
  3. The RACI has been updated with current POCs for each component

@nywilken nywilken added ui and removed ui labels Oct 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
EPIC ⚔️ EPIC issue to consolidate several sub-issues
Projects
None yet
Development

No branches or pull requests

9 participants