Cleanup Dockerfiles by removing unused asn1c instructions and comments#48
Cleanup Dockerfiles by removing unused asn1c instructions and comments#48dmccoystephenson merged 7 commits intodevelopfrom
Conversation
| apt update | ||
| apt-get -y install sudo wget curl gnupg lsb-release gcovr unzip gcc-multilib libasan* | ||
| sudo apt-get -y install software-properties-common | ||
| sudo apt-get -y install libcurl4-openssl-dev |
There was a problem hiding this comment.
Note: This was necessary to get the CI checks to pass.
|
Looks good to me! |
| cd ./asn1c && aclocal && test -f configure || autoreconf -iv && ./configure && make && make install | ||
| working-directory: ${{ env.working-directory }} | ||
|
|
||
| - name: Generate ASN.1 API. |
There was a problem hiding this comment.
question(blocking): if we have moved away from the doIt.sh script, should this action be updated to use the generate-files.sh script instead?
There was a problem hiding this comment.
The doIt.sh script is now used to extract header & implementation files which are compiled separately by generate-files.sh. The former is what is required here. I've renamed this action to make it clear that we're extracting files rather than generating them.
| - name: Extract implementation and header files | ||
| run: | | ||
| export LD_LIBRARY_PATH=/usr/local/lib | ||
| git clone https://github.com/usdot-jpo-ode/scms-asn1.git |
There was a problem hiding this comment.
Note: SCMS files are now tracked directly in the asn1_codec repo so this clone command was unnecessary.
| - name: Install pugixml | ||
| run: | | ||
| git clone https://github.com/vlm/asn1c.git | ||
| git clone https://github.com/zeux/pugixml.git |
There was a problem hiding this comment.
question (non-blocking): it's not related to the changes in this PR, but do you know why we're explicitly cloning here and not using git submodule?
There was a problem hiding this comment.
I don't know if there is a particular reasoning that the original author of ci.yml had, but this does introduce the potential for CI checks to use different versions of git submodule code than the actual repository so it may be a good idea to look into using the existing git submodules present when checking out the asn1_codec files.
Problem
Previously, the
doIt.shscript was updated to extract already-compiled header/implementation files rather than compiling them using asn1c. This decoupled the compilation process from the Docker build process, and the relevant asn1c installation instructions were commented out in the Dockerfiles. These commented-out instructions remain, cluttering the files.Solution
Removed all commented-out commands and contextual comments related to asn1c installation from all Dockerfiles to improve readability and maintainability. No active commands, configurations, or environment settings were changed.
Testing
docker buildcompletes successfully for each Dockerfile.Other Changes
ci.ymlto fix a CI check failure.ci.ymlfile since they are no longer required for thedoIt.shscript.