Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Commands:
    • kubectl create configmap build-config --from-file=build-request.
      properties
    • kubectl describe configmaps build-config
    • kubectl create -f build-config.yml

todo:  Work on test project like test-ioc, with bom. claudio can use this to test

  • we can make the lsit of components just have boost and epics for now
  • Then we want to get to the point where a pod is executed and start_build.py can read the bom of the ioc

todo: Work on getting testing flow designed

...

  1. User command CLI $ bs run build  which does the build flow.
    1. Pass to backend the component, branch, and user headers
    2. backend looks into component DB for the development image
    3. backend mounts /mnt  at /sdf/scratch/ad/ad-build/ for downloading src code
    4. backend mounts /build  at /sdf/groups/eed/ad/ad-build/ for the build scripts
    5. backend mounts configMap at /config/build_config.json for build request information
    6. starts the build container and calls start_build.py 
    7. start_build.py then performs a build and outputs its results at the top of repo directory
  2. start_build.py  will then call start_test.py
  3. start_test.py will then look into directories in the src code called /test/unit_tests/ and run those


Group meeting 6-6-24

...

  • 1) Use docker image with all the dependencies baked into it
  • 2) or create container that have repo download/install all dependencies with cmake maybe
  • 3) Have a configuration file for user to use saying which dependencies he has, and the ad-build will create the docker image for you.

...

  • then need 

...

  • lets say we have ioc that depends on boost and epics, if we start with vanilla dev container like rocky9, what information do we need to have
  • once the image is built dynamically, then transfer that to a registry, and developers can use that on s3df apptainer since it has full dependencies.
  • Who will build the image dynamically? - To build on kubernetres isn't possible, may need to find alternative like buildah, or just use github?

...

  • boost component
  • epics component

...

  • image with everything is installed, one for each environment
  • has bin,lib,etc, everything with all dependencies installed with dependencies you chose
  • with goal of having iocs run in containers

...

Group Meeting 6-6-24 - LCLSControls - SLAC Confluence (stanford.edu)