Page to document where Mike Dunning is going to try our Build System as it currently stands, with his IOC of choice.

These are the steps an end-user should need to take  

  1. On S3DF activate conda environment for libraries Build System uses
    1. Couldn't make it globally accessible because s3df admins don't give workers in AD access

      # Clone BuildSystem
      git clone https://github.com/ad-build-test/BuildSystem.git
      # Conda environment on S3DF
      source /sdf/group/lcls/ds/ana/sw/conda1/manage/bin/psconda.sh
      # Create conda environment locally (couldn't create it on lcls psana area, because s3df admins said i am not part of lcls, only AD)
      conda env create -f BuildSystem/adbs-env.yml
      # Activate environment
      conda activate adbs-env
      # To run cli (its not in s3df global /bin directory yet, so we have to manually call python3)
      cd BuildSystem/bs_cli
      python3 bs_main.py
  2. Using the CLI, add the existing IOC repo to the component database
    1. like this ./bs create repo -c test-ioc -u https://github.com/ad-build-test/test-ioc
  3. Add a CONFIG.yaml that specifies dependencies. like this test-ioc/configure/CONFIG.yaml at main · ad-build-test/test-ioc (github.com)
  4. (Tentative) At the moment, when I built my test IOC, since the built dependencies were copied over to /build in the container. I had to change

    in configure/RELEASE
    Update EPICS_BASE   to point to /build/epics-base
    Update ASYN to point to /build/asyn

    1. So you'll do the same for the rest of the dependencies

    2. OR it is also possible to just update the RELEASE_SITE to point to /build specifically the $BASE_SITE_TOP, $EPICS_MODULES, $PACKAGE_SITE_TOP, $
    3. Also in configure/CONFIG_SITE
      1. Update CHECK_RELEASE = NO
  5. Run the build using the CLI

Here are the additional steps we need to manually take since Build System is not yet complete

  1. Copy the IOC repo to ad-build-test organization
  2. This may take long - Add in the dependencies manually to the artifact storage and build them, (because there are no instructions to build dependencies that our artifact api can parse, ideally a CONFIG.yaml would be in place)
  3. Ask Claudio once the build starts, to give us the output because his backend is still running on accel-webdev cluster not ad-build because of secret vault issues not yet solved
  4. Check at /sdf/groups/ad/eed/ad-build/scratch/<hash>-<IOC> to see if the repo was built successfully
  5. Then check the image build pod for the IOC successfully built the image

Current - 

Make sure you can run cli in s3df console, may make your conda env, (TODO: Need to create that environment - install necessary packages, then do a 'conda env export > build-environment.yml')

# Clone BuildSystem
git clone https://github.com/ad-build-test/BuildSystem.git
# Conda environment on S3DF
source /sdf/group/lcls/ds/ana/sw/conda1/manage/bin/psconda.sh
# Create conda environment locally (couldn't create it on lcls psana area, because s3df admins said i am not part of lcls, only AD)
conda env create -f BuildSystem/adbs-env.yml
# Activate environment
conda activate adbs-env
# To run cli (its not in s3df global /bin directory yet, so we have to manually call python3)
cd BuildSystem/bs_cli
python3 bs_main.py



  • No labels