1414 -id :extract
1515shell :bash
1616run :|
17+ set +e # Don't exit on error
18+
1719 # Debug information
1820 echo "=== Debug Information ==="
1921 echo "Current directory: $(pwd)"
@@ -30,31 +32,19 @@ runs:
3032 # Try both uppercase and lowercase variants
3133 if [ -f "Anchor.toml" ]; then
3234 echo "Found Anchor.toml in current directory" >&2
33- version=$(grep -i "^${key}_version *= *\".*\"" Anchor.toml | cut -d'"' -f2)
34- if [ -n "$version" ]; then
35- echo "$version"
36- return 0
37- fi
35+ version=$(grep -i "^${key}_version *= *\".*\"" Anchor.toml | cut -d'"' -f2 || true)
3836 elif [ -f "anchor.toml" ]; then
3937 echo "Found anchor.toml in current directory" >&2
40- version=$(grep -i "^${key}_version *= *\".*\"" anchor.toml | cut -d'"' -f2)
41- if [ -n "$version" ]; then
42- echo "$version"
43- return 0
44- fi
38+ version=$(grep -i "^${key}_version *= *\".*\"" anchor.toml | cut -d'"' -f2 || true)
4539 # Then try to find it in subdirectories
4640 else
4741 anchor_toml=$(find . -iname "anchor.toml" -type f | head -n 1)
4842 if [ -n "$anchor_toml" ]; then
4943 echo "Found anchor.toml at: $anchor_toml" >&2
50- version=$(grep -i "^${key}_version *= *\".*\"" "$anchor_toml" | cut -d'"' -f2)
51- if [ -n "$version" ]; then
52- echo "$version"
53- return 0
54- fi
44+ version=$(grep -i "^${key}_version *= *\".*\"" "$anchor_toml" | cut -d'"' -f2 || true)
5545 fi
5646 fi
57- return 1
47+ echo "$version"
5848 }
5949
6050 # Extract Solana version
7060 echo "No Solana version found in anchor.toml, checking Cargo.lock..."
7161 # Fallback to Cargo.lock
7262 if [ -f "Cargo.lock" ]; then
73- SOLANA_VERSION=$(grep -A 2 'name = "solana-program"' Cargo.lock | grep 'version' | head -n 1 | cut -d'"' -f2)
63+ SOLANA_VERSION=$(grep -A 2 'name = "solana-program"' Cargo.lock | grep 'version' | head -n 1 | cut -d'"' -f2 || true )
7464 if [ -n "${SOLANA_VERSION}" ]; then
7565 echo "Detected Solana version from Cargo.lock: ${SOLANA_VERSION}"
7666 else
8575 # Ensure clean version output
8676 if [ -n "${SOLANA_VERSION}" ]; then
8777 # Remove any newlines and ensure we only have the version
88- SOLANA_VERSION=$(echo "${SOLANA_VERSION}" | tr -d '\n' | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+')
89- echo "solana_version=${SOLANA_VERSION}" >> $GITHUB_OUTPUT
90- echo "SOLANA_VERSION=${SOLANA_VERSION}" >> $GITHUB_ENV
78+ SOLANA_VERSION=$(echo "${SOLANA_VERSION}" | tr -d '\n' | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+' || true)
79+ if [ -n "${SOLANA_VERSION}" ]; then
80+ echo "solana_version=${SOLANA_VERSION}" >> $GITHUB_OUTPUT
81+ echo "SOLANA_VERSION=${SOLANA_VERSION}" >> $GITHUB_ENV
82+ fi
9183 fi
9284
9385 # Extract Anchor version
10496 # Fallback to Cargo.lock
10597 if [ -f "Cargo.lock" ]; then
10698 if grep -q 'name = "anchor-lang"' Cargo.lock; then
107- ANCHOR_VERSION=$(grep -A 2 'name = "anchor-lang"' Cargo.lock | grep 'version' | head -n 1 | cut -d'"' -f2)
99+ ANCHOR_VERSION=$(grep -A 2 'name = "anchor-lang"' Cargo.lock | grep 'version' | head -n 1 | cut -d'"' -f2 || true )
108100 echo "Detected Anchor version from Cargo.lock: ${ANCHOR_VERSION}"
109101 else
110102 echo "⚠️ No Anchor version found in Cargo.lock"
@@ -118,16 +110,18 @@ runs:
118110 # Ensure clean version output
119111 if [ -n "${ANCHOR_VERSION}" ]; then
120112 # Remove any newlines and ensure we only have the version
121- ANCHOR_VERSION=$(echo "${ANCHOR_VERSION}" | tr -d '\n' | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+')
122- echo "anchor_version=${ANCHOR_VERSION}" >> $GITHUB_OUTPUT
123- echo "ANCHOR_VERSION=${ANCHOR_VERSION}" >> $GITHUB_ENV
113+ ANCHOR_VERSION=$(echo "${ANCHOR_VERSION}" | tr -d '\n' | grep -o '[0-9]\+\.[0-9]\+\.[0-9]\+' || true)
114+ if [ -n "${ANCHOR_VERSION}" ]; then
115+ echo "anchor_version=${ANCHOR_VERSION}" >> $GITHUB_OUTPUT
116+ echo "ANCHOR_VERSION=${ANCHOR_VERSION}" >> $GITHUB_ENV
117+ fi
124118 fi
125119
126120 # Debug environment variables
127121 echo "=== Environment Variables Debug ==="
128122 echo "Content of GITHUB_ENV file:"
129123 cat $GITHUB_ENV
130124 echo "=== Direct Environment Variables ==="
131- echo "SOLANA_VERSION: $SOLANA_VERSION"
125+ echo "SOLANA_VERSION: ${ SOLANA_VERSION:-not found} "
132126 echo "ANCHOR_VERSION: ${ANCHOR_VERSION:-not found}"
133127 echo "==========================="