Skip to content

Commit

Permalink
chore: Set euo pipefail in all scripts (#5727)
Browse files Browse the repository at this point in the history
  • Loading branch information
I-Al-Istannen committed Apr 5, 2024
1 parent 7750dd3 commit ba0a0b0
Show file tree
Hide file tree
Showing 9 changed files with 44 additions and 8 deletions.
3 changes: 3 additions & 0 deletions chore/release-beta.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
#!/usr/bin/env bash
set -euo pipefail

CURRENT_VERSION="$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout | sed 's/-SNAPSHOT//')"
CURRENT_VERSION_WITH_SNAPSHOT="$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)"

Expand Down
3 changes: 3 additions & 0 deletions chore/release-nightly.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
#!/usr/bin/env bash
set -euo pipefail

CURRENT_VERSION_WITH_SNAPSHOT="$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)"

if [[ ! $CURRENT_VERSION_WITH_SNAPSHOT =~ .*-SNAPSHOT ]]; then
Expand Down
3 changes: 3 additions & 0 deletions chore/release.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
#!/usr/bin/env bash
set -euo pipefail

if [ -z "$1" ]; then
echo "Usage: $0 <patch|major|minor>"
exit 1
Expand Down
26 changes: 21 additions & 5 deletions flake.nix
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,7 @@
pkgs.mkShell rec {
test = pkgs.writeScriptBin "test" ''
set -eu
# Use silent log config
cp chore/logback.xml src/test/resources/
mvn -f spoon-pom -B test-compile
Expand All @@ -95,19 +96,24 @@
'';
coverage = pkgs.writeScriptBin "coverage" ''
set -eu
# Use silent log config
cp chore/logback.xml src/test/resources/
mvn -f spoon-pom -B test-compile
mvn -f spoon-pom -Pcoveralls test jacoco:report coveralls:report -DrepoToken=$GITHUB_TOKEN -DserviceName=github -DpullRequest=$PR_NUMBER --fail-never
'';
codegen = pkgs.writeScriptBin "codegen" ''
set -eu
mvn test -Dtest=spoon.testing.assertions.codegen.AssertJCodegen
mvn spotless:apply
git diff --exit-code || echo "::error::Generated code is not up to date. Execute mvn test -Dtest=spoon.testing.assertions.codegen.AssertJCodegen, mvn spotless:apply and commit your changes."
'';
set -eu
mvn test -Dtest=spoon.testing.assertions.codegen.AssertJCodegen
mvn spotless:apply
if ! git diff --exit-code; then
echo "::error::Generated code is not up to date. Execute mvn test -Dtest=spoon.testing.assertions.codegen.AssertJCodegen, mvn spotless:apply and commit your changes."
exit 1
fi
'';
extra = pkgs.writeScriptBin "extra" (if !extraChecks then "exit 2" else ''
set -eu
# Use silent log config
cp chore/logback.xml src/test/resources/
# Verify and Site Maven goals
Expand Down Expand Up @@ -159,16 +165,24 @@
popd || exit 1
'');
extraRemote = pkgs.writeScriptBin "extra-remote" ''
set -eu
curl https://raw.githubusercontent.com/SpoonLabs/spoon-ci-external/master/spoon-pull-request.sh | bash
'';
mavenPomQuality = pkgs.writeScriptBin "maven-pom-quality" ''
set -eu
# we dont enforce that the version must be non snapshot as this is not possible for SNAPSHOT versions in our workflow.
mvn -f spoon-pom org.kordamp.maven:pomchecker-maven-plugin:1.9.0:check-maven-central -D"checker.release=false"
'';
reproducibleBuilds = pkgs.writeScriptBin "reproducible-builds" ''
set -eu
chore/check-reproducible-builds.sh
'';
ciJavadocQuality = pkgs.writeScriptBin "ci-javadoc-quality" ''
set -eu
# Help jbang. Build locally and update the version. Otherwise it fails to resolve sometimes.
pushd spoon-pom || exit 1
mvn clean install -Dmaven.test.skip=true -DskipDepClean &>/dev/null
Expand All @@ -185,6 +199,8 @@
javadoc-quality
'';
javadocQuality = pkgs.writeScriptBin "javadoc-quality" ''
set -eu
./chore/check-javadoc-regressions.py COMPARE_WITH_MASTER
'';
pythonEnv =
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,8 @@ public interface CtAnnotationMethodAssertInterface<A extends AbstractObjectAsser
default CtExpressionAssertInterface<?, ?> getDefaultExpression() {
return SpoonAssertions.assertThat(actual().getDefaultExpression());
}

default CtReceiverParameterAssertInterface<?, ?> getReceiverParameter() {
return SpoonAssertions.assertThat(actual().getReceiverParameter());
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
package spoon.testing.assertions;
import org.assertj.core.api.AbstractObjectAssert;
import spoon.reflect.declaration.CtAnonymousExecutable;
public interface CtAnonymousExecutableAssertInterface<A extends AbstractObjectAssert<A, W>, W extends CtAnonymousExecutable> extends SpoonAssert<A, W> , CtExecutableAssertInterface<A, W> , CtTypeMemberAssertInterface<A, W> {}
public interface CtAnonymousExecutableAssertInterface<A extends AbstractObjectAssert<A, W>, W extends CtAnonymousExecutable> extends SpoonAssert<A, W> , CtExecutableAssertInterface<A, W> , CtTypeMemberAssertInterface<A, W> {
default CtReceiverParameterAssertInterface<?, ?> getReceiverParameter() {
return SpoonAssertions.assertThat(actual().getReceiverParameter());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,8 @@ public interface CtLambdaAssertInterface<A extends AbstractObjectAssert<A, W>, W
default CtExpressionAssertInterface<?, ?> getExpression() {
return SpoonAssertions.assertThat(actual().getExpression());
}

default CtReceiverParameterAssertInterface<?, ?> getReceiverParameter() {
return SpoonAssertions.assertThat(actual().getReceiverParameter());
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package spoon.testing.assertions;
import org.assertj.core.api.AbstractObjectAssert;
import spoon.reflect.declaration.CtReceiverParameter;
interface CtReceiverParameterAssertInterface<A extends AbstractObjectAssert<A, W>, W extends CtReceiverParameter> extends CtElementAssertInterface<A, W> , SpoonAssert<A, W> , CtTypedElementAssertInterface<A, W> , CtShadowableAssertInterface<A, W> {}
public interface CtReceiverParameterAssertInterface<A extends AbstractObjectAssert<A, W>, W extends CtReceiverParameter> extends CtElementAssertInterface<A, W> , SpoonAssert<A, W> , CtTypedElementAssertInterface<A, W> , CtShadowableAssertInterface<A, W> {}
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,6 @@
import spoon.reflect.code.CtNewArray;
import spoon.reflect.code.CtNewClass;
import spoon.reflect.code.CtOperatorAssignment;
import spoon.reflect.code.CtRecordPattern;
import spoon.reflect.code.CtPattern;
import spoon.reflect.code.CtRHSReceiver;
import spoon.reflect.code.CtRecordPattern;
Expand Down

0 comments on commit ba0a0b0

Please sign in to comment.