Skip to content

Merge pull request #1 from adunning/dependabot/maven/org.junit.jupite… #7

Merge pull request #1 from adunning/dependabot/maven/org.junit.jupite…

Merge pull request #1 from adunning/dependabot/maven/org.junit.jupite… #7

Workflow file for this run

name: CI
on:
push:
pull_request:
jobs:
build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- uses: actions/setup-java@v5
with:
distribution: temurin
java-version: "25"
cache: maven
cache-dependency-path: |
pom.xml
.mvn/wrapper/maven-wrapper.properties
- name: Verify
run: ./mvnw -B -q verify
- name: Smoke Test
run: |
tmpdir="$(mktemp -d)"
repo="${tmpdir}/repo"
mkdir -p "${repo}"
cd "${repo}"
git init -q
git config user.name "CI"
git config user.email "ci@example.com"
cat > "${tmpdir}/schema.rng" <<'EOF'
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
<start>
<element name="root">
<empty/>
</element>
</start>
</grammar>
EOF
cp "${tmpdir}/schema.rng" "${repo}/schema.rng"
cat > "${repo}/valid.xml" <<'EOF'
<?xml version="1.0"?>
<?xml-model href="schema.rng" schematypens="http://relaxng.org/ns/structure/1.0"?>
<root/>
EOF
git add schema.rng valid.xml
git commit -qm "Initial XML"
XML_MODEL_VALIDATOR_WORKSPACE="${repo}" \
XML_MODEL_VALIDATOR_CACHE_HOME="${tmpdir}/cache" \
XML_MODEL_VALIDATOR_INPUT_JOBS="0" \
bash "${GITHUB_WORKSPACE}/entrypoint.sh"
cat > "${repo}/changed.xml" <<'EOF'
<?xml version="1.0"?>
<?xml-model href="schema.rng" schematypens="http://relaxng.org/ns/structure/1.0"?>
<root/>
EOF
before_sha="$(git rev-parse HEAD)"
git add changed.xml
git commit -qm "Changed XML"
cat > "${tmpdir}/push-event.json" <<EOF
{"before":"${before_sha}"}
EOF
XML_MODEL_VALIDATOR_WORKSPACE="${repo}" \
XML_MODEL_VALIDATOR_CACHE_HOME="${tmpdir}/cache" \
XML_MODEL_VALIDATOR_INPUT_CHANGED_ONLY="true" \
GITHUB_EVENT_NAME="push" \
GITHUB_SHA="$(git rev-parse HEAD)" \
GITHUB_EVENT_PATH="${tmpdir}/push-event.json" \
XML_MODEL_VALIDATOR_INPUT_JOBS="0" \
bash "${GITHUB_WORKSPACE}/entrypoint.sh"
origin_repo="${tmpdir}/origin.git"
pr_repo="${tmpdir}/pr-repo"
git init -q --bare "${origin_repo}"
git clone -q "${origin_repo}" "${pr_repo}"
cd "${pr_repo}"
git config user.name "CI"
git config user.email "ci@example.com"
git checkout -qb main
cat > schema.rng <<'EOF'
<grammar xmlns="http://relaxng.org/ns/structure/1.0">
<start>
<element name="root">
<empty/>
</element>
</start>
</grammar>
EOF
cat > base.xml <<'EOF'
<?xml version="1.0"?>
<?xml-model href="schema.rng" schematypens="http://relaxng.org/ns/structure/1.0"?>
<wrong/>
EOF
git add schema.rng base.xml
git commit -qm "Base branch"
git push -q -u origin main
git checkout -qb feature
cat > pr-changed.xml <<'EOF'
<?xml version="1.0"?>
<?xml-model href="schema.rng" schematypens="http://relaxng.org/ns/structure/1.0"?>
<root/>
EOF
echo note > note.txt
git add pr-changed.xml note.txt
git commit -qm "Feature branch"
XML_MODEL_VALIDATOR_WORKSPACE="${pr_repo}" \
XML_MODEL_VALIDATOR_CACHE_HOME="${tmpdir}/cache" \
XML_MODEL_VALIDATOR_INPUT_CHANGED_ONLY="true" \
GITHUB_EVENT_NAME="pull_request" \
GITHUB_BASE_REF="main" \
GITHUB_SHA="$(git rev-parse HEAD)" \
XML_MODEL_VALIDATOR_INPUT_JOBS="0" \
bash "${GITHUB_WORKSPACE}/entrypoint.sh"