-
Notifications
You must be signed in to change notification settings - Fork 236
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix: don't overwrite .env file (#2261)
* Fix: don't overwrite .env file Do not overwrite the .env file in case ctl commands are executed. This is specially important if extra environment variables are passed in the .env file Signed-off-by: Raphael Silva <[email protected]> * Add tests for control script Signed-off-by: Raphael Silva <[email protected]> * Fix typo in github workflow Signed-off-by: Raphael Silva <[email protected]> * Fix shell linting errors Signed-off-by: Raphael Silva <[email protected]> * Update .github/workflows/PR-build.yml * Make debian aligned with RPM Signed-off-by: Raphael Silva <[email protected]> * properly install collector deb Signed-off-by: Raphael Silva <[email protected]> * Use dpkg to install collector Signed-off-by: Raphael Silva <[email protected]> * Properly use cache Signed-off-by: Raphael Silva <[email protected]> * Move control script tests to the CI Signed-off-by: Raphael Silva <[email protected]> * Add the pr-build tests back Signed-off-by: Raphael Silva <[email protected]> --------- Signed-off-by: Raphael Silva <[email protected]> Co-authored-by: bryan-aguilar <[email protected]>
- Loading branch information
1 parent
4da7dca
commit 3d239c5
Showing
5 changed files
with
116 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
#!/bin/bash -x | ||
|
||
set -e | ||
|
||
# This script is supposed to run during the CI to validate that the control | ||
# script is working as expected | ||
# Important: this script requires root permission. | ||
|
||
COLLECTOR_DEB=$1 | ||
COLLECTOR_CONFIG=$2 | ||
|
||
ADOT_CTL=/opt/aws/aws-otel-collector/bin/aws-otel-collector-ctl | ||
ENV_FILE="/opt/aws/aws-otel-collector/etc/.env" | ||
CONFIG_FILE="/opt/aws/aws-otel-collector/etc/config.yaml" | ||
|
||
setup() { | ||
dpkg -i "$COLLECTOR_DEB" | ||
} | ||
|
||
test_collector_ctl_does_not_overwrite_env() { | ||
$ADOT_CTL -a start | ||
if [ ! -e $CONFIG_FILE ]; then | ||
echo "Config file does not exist" | ||
exit 1 | ||
fi | ||
|
||
echo "EXTRA_ENV=\"some value\"" | tee -a $ENV_FILE > /dev/null | ||
|
||
# We don't need the collector to succeed, just that the control script is execised | ||
$ADOT_CTL -a start -c "http://example.com" | ||
|
||
if ! grep -q EXTRA_ENV "$ENV_FILE"; then | ||
echo "Env file was overwritten" | ||
exit 1 | ||
fi | ||
|
||
$ADOT_CTL -a start -c "$COLLECTOR_CONFIG" | ||
if ! grep -q EXTRA_ENV "$ENV_FILE"; then | ||
ehco "Env file was overwritten" | ||
exit 1 | ||
fi | ||
echo "${FUNCNAME[0]} ... OK" | ||
} | ||
|
||
|
||
setup | ||
|
||
## Tests | ||
test_collector_ctl_does_not_overwrite_env |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -379,6 +379,27 @@ jobs: | |
run: | | ||
gpg --fingerprint --with-colons [email protected] grep "^fpr" | sed -n 's/^fpr:::::::::\([[:alnum:]]\+\):/\1/p' | xargs gpg --batch --yes --delete-secret-keys | ||
gpg --list-secret-keys | ||
test-control-stript: | ||
runs-on: ubuntu-latest | ||
needs: [packaging-deb] | ||
steps: | ||
- name: Checkout | ||
if: ${{ needs.changes.outputs.changed == 'true' }} | ||
uses: actions/checkout@v3 | ||
|
||
- name: Restore cached Debs | ||
if: ${{ needs.changes.outputs.changed == 'true' }} | ||
uses: actions/cache@v3 | ||
with: | ||
key: "cached_debs_${{ github.run_id }}" | ||
path: ${{ env.PACKAGING_ROOT }} | ||
|
||
- name: Execute tests | ||
if: ${{ needs.changes.outputs.changed == 'true' }} | ||
run: | | ||
sudo ./.github/scripts/test-collector-ctl.sh $PACKAGING_ROOT/debian/amd64/aws-otel-collector.deb ./config.yaml | ||
packaging-ssm: | ||
runs-on: ubuntu-latest | ||
needs: [packaging-rpm, packaging-deb, packaging-msi] | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters