-
Notifications
You must be signed in to change notification settings - Fork 30
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
Updated to support new release build flow. #146
Conversation
…at accidentally slipped in.
This includes taking some of the build steps out of corresponding docker files, support for `gpg-deb` and `gpg-rpm` GPG homes, updated docs, and some adjustments to how integration tests are run.
if [ -z $DOCKER_DEV_ENV ]; then | ||
# Prevent starting pdagent in Docker environment because systemd | ||
# will do that after running the Docker systemd process | ||
systemctl start pdagent | ||
fi |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This section isn't required anymore since pdagent
is installed after the container has been spun up, more like on a real system.
WORKDIR /pd-agent-install | ||
COPY . /pd-agent-install | ||
RUN mkdir -p /pd-agent-install/build-linux/release | ||
RUN cd /pd-agent-install/build-linux && ./make_rpm.sh /pd-agent-install/build-linux/gnupg /pd-agent-install/build-linux/release | ||
RUN echo "Installing rpm package" | ||
|
||
RUN ./scripts/build.sh centos | ||
COPY . $DOCKER_WORKDIR | ||
WORKDIR $DOCKER_WORKDIR |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Part of this decision was to support interactive builds, something required for production releases with GPG passphrases.
|
||
_PID=$(docker ps -q -f ancestor=pdagent-${OS}) | ||
docker exec $_PID /bin/bash /usr/share/pdagent/scripts/install.sh $OS | ||
|
||
if [ -z $TEST_FILE ] | ||
then | ||
docker exec $_PID /bin/bash /usr/share/pdagent/integration_tests/run-tests.sh | ||
else | ||
docker exec -it $_PID /bin/bash ./integration_tests/${TEST_FILE} | ||
fi | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This allows us to run an individual test by setting a TEST_FILE
environment variable.
@@ -0,0 +1,29 @@ | |||
#!/bin/bash |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This file is mostly an updated version of build.sh
focused on installation, with actual builds driven by make
.
We're currently stradling a few python versions and distros, making locking down a common `python` package trickier than it should be. This temporarily unblocks installing this package and should result in an immediate (and apparent) failure when Python isn't available. We'll investigate a long-term solution independently.
@@ -131,7 +133,7 @@ else | |||
fi | |||
|
|||
echo = FPM! | |||
_FPM_DEPENDS="--depends sudo --depends python" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Dropped for the time being since there aren't any consistent providers of just python
anymore cross distros.
Our currently installation instructions cover installing Python, but if necessary we can add a wrapper or specify more fine-grained dependencies.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIRC i looked at this a a while back and it looked good
This includes taking some of the build steps out of corresponding docker files, support for
gpg-deb
andgpg-rpm
GPG homes, updated docs, and some adjustments to how integration tests are run.