Skip to content

GitHub and AWS Interaction (Provisional)

Dmitry Cousin edited this page Jun 21, 2024 · 2 revisions

Provisional Communication Design for GitHub $\xleftrightarrow{\text{communication}}$ AWS

1. Create structure [Known]

graph TB
OSCAL[.oscal]
Com[.oscal/.com]
Opt[.oscal/.opt]

OSCAL-->Com
OSCAL-->Opt
Loading

2. !!!!!! The GitHub action (auto or manual) informs AWS by sending file to (prelim.) S3 [Mechanism TBD] and AWS internals react.

3. The AWS communicates git push into .oscal/.com

4. The Github local script [most likely Python] reads the file in .com

graph TB

    gitPush(on git Push From EC2)
    qCondition{file-data is new}
    qUpdate{need update}
    Script[/Run Python Scrip/]
    Finish[/Finish Update/]
    Drop[[Drop File and Log]]

    gitPush --> qCondition
    qCondition-->|Yes|Script
    Script-->qUpdate
    qUpdate-->|No|Drop
    qUpdate-->|Yes|Finish

Loading

5. The overall sequence of events should look as follows:

sequenceDiagram
    participant GH as GitHub-Action
    participant S3 as S3-File
    participant EC2 as EC2-VPC



    GH ->> S3: Copy Info File
    S3 ->> EC2: Informs EC2
    EC2 -->> EC2: Runs File-Driven Query
    EC2 ->> GH: Pulls the Latest from Github
    EC2 ->> GH: Updates File in Repo 
    EC2 -->> EC2: Adds Files to Change-Set
    EC2 -->> EC2: Commits Files to Change-Set
    EC2 ->> GH: Pushes Files to Change-Set
    GH ->> GH: Runs the Steps in 4


Loading