Skip to content
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

Release v0.3.0 #91

Merged
merged 120 commits into from
Nov 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
120 commits
Select commit Hold shift + click to select a range
ae728f1
Merge pull request #1 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
4a270b3
Merge pull request #2 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
41737b9
Merge pull request #3 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
199bc9d
Merge pull request #4 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
69f74d6
Merge pull request #6 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
4529301
Merge pull request #7 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
02e51e6
Merge pull request #9 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
5245198
Merge pull request #11 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
f6ebc8e
Merge pull request #13 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 21, 2024
12ea2d0
add build+publish dockerfile
ngundotra Oct 22, 2024
402c207
Merge pull request #15 from ngundotra/ghcr-publish
ngundotra Oct 22, 2024
a8c5ee1
fix namespace
ngundotra Oct 22, 2024
a5cca36
Merge pull request #16 from ngundotra/ghcr-publish
ngundotra Oct 22, 2024
26c2f97
fix namespace variable
ngundotra Oct 22, 2024
25f95c2
Merge pull request #17 from ngundotra/ghcr-publish
ngundotra Oct 22, 2024
796020a
fix attestation
ngundotra Oct 22, 2024
8b5afae
Merge pull request #18 from ngundotra/ghcr-publish
ngundotra Oct 22, 2024
5e29257
update whitelist ci job
ngundotra Oct 22, 2024
c3ec591
fix token
ngundotra Oct 22, 2024
7d0bc31
Merge pull request #19 from ngundotra/update-whitelist
ngundotra Oct 22, 2024
5a88012
update_whitelist
ngundotra Oct 22, 2024
657269e
update whitelist desc
ngundotra Oct 22, 2024
e0af05a
Merge pull request #20 from ngundotra/update-whitelist
ngundotra Oct 22, 2024
03cfd30
fix dockerfile
ngundotra Oct 22, 2024
d760f51
Merge pull request #22 from ngundotra/fix
ngundotra Oct 22, 2024
f247084
update image whitelist to kick off on push to master
ngundotra Oct 22, 2024
22ef44a
prefix branch w autopr
ngundotra Oct 22, 2024
86c4b22
Merge pull request #24 from ngundotra/update-whitelist
ngundotra Oct 22, 2024
98b3b10
Merge pull request #26 from ngundotra/dockerfile-script-ci-0
ngundotra Oct 22, 2024
6103161
straighten out workflows
ngundotra Oct 22, 2024
de3e1d1
report matrix version
ngundotra Oct 22, 2024
ef53972
Merge pull request #27 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
48be5a9
Update Dockerfiles
ngundotra Oct 22, 2024
88f051a
Merge pull request #28 from ngundotra/autopr-update-dockerfiles
ngundotra Oct 22, 2024
ded29ce
Revert "Update Dockerfiles"
ngundotra Oct 22, 2024
58a8802
Merge pull request #29 from ngundotra/revert-28-autopr-update-dockerf…
ngundotra Oct 22, 2024
df59e72
fix parsing, ignore deleted files
ngundotra Oct 22, 2024
f2a07d2
Merge pull request #30 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
58fc8a2
Update Dockerfiles
ngundotra Oct 22, 2024
ce1e338
Merge pull request #31 from ngundotra/autopr-update-dockerfiles
ngundotra Oct 22, 2024
a413fcf
Revert "Update Dockerfiles"
ngundotra Oct 22, 2024
9c087d7
Merge pull request #32 from ngundotra/revert-31-autopr-update-dockerf…
ngundotra Oct 22, 2024
fc72fc5
show matrix outputs
ngundotra Oct 22, 2024
21bffe8
Merge pull request #33 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
60d9b01
Update Dockerfiles
ngundotra Oct 22, 2024
a3a2df5
Merge pull request #34 from ngundotra/autopr-update-dockerfiles
ngundotra Oct 22, 2024
7995875
choose base version to compare to
ngundotra Oct 22, 2024
8318e3a
Merge pull request #35 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
84d3b86
add fetch depth
ngundotra Oct 22, 2024
0b4927e
Merge pull request #36 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
5eb05df
fix matrix parsing
ngundotra Oct 22, 2024
ddb6187
Merge pull request #37 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
365b16c
fix parsing
ngundotra Oct 22, 2024
a6077aa
Merge pull request #38 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
5fc13be
remove mapping w key
ngundotra Oct 22, 2024
6430aaa
Merge pull request #39 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 22, 2024
cce02e6
revamp
ngundotra Oct 23, 2024
a12e95c
Merge pull request #40 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 23, 2024
d5ac5df
matrix -> versions name
ngundotra Oct 23, 2024
c9abdcf
Merge pull request #41 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 23, 2024
0af870a
truncate whitespace
ngundotra Oct 23, 2024
d0188f8
Merge pull request #42 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 23, 2024
2d11901
truncate
ngundotra Oct 23, 2024
a12f9c1
Merge pull request #43 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 23, 2024
9b33c37
debug
ngundotra Oct 23, 2024
e41d6ad
Merge pull request #44 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 23, 2024
9a83dc8
fix version matrix strat
ngundotra Oct 23, 2024
00e1053
Merge pull request #45 from ngundotra/ci-publish-dockerfiles
ngundotra Oct 23, 2024
e2bea70
fix ghcr parsing
ngundotra Oct 24, 2024
00fa0df
Merge pull request #46 from ngundotra/update-whitelist
ngundotra Oct 24, 2024
f4d0103
fix issue where tags don't get parsed correctly
ngundotra Oct 24, 2024
09b29fc
Merge pull request #48 from ngundotra/update-whitelist
ngundotra Oct 24, 2024
81d1685
feat: dockerhub push
jacobcreech Oct 25, 2024
25160c0
fix: attestation
jacobcreech Oct 26, 2024
1f23f47
fix: remove trailing /
jacobcreech Oct 26, 2024
258a02a
feat: update publishing all dockerfiles
jacobcreech Oct 26, 2024
37c6154
fix: add sf dockerhub to whitelist
jacobcreech Oct 26, 2024
f56166f
Merge branch 'master' of https://github.com/Ellipsis-Labs/solana-veri…
jacobcreech Oct 31, 2024
bcb5251
Update publish_all_dockerfiles.yaml
jacobcreech Nov 1, 2024
1a234ae
Update publish_all_dockerfiles.yaml
jacobcreech Nov 1, 2024
9c90b32
Add and use sf images
Woody4618 Nov 2, 2024
89a49df
Add version >1.18.23 and >2.0 from agave
Woody4618 Nov 4, 2024
856ee4b
change PATH back to solana
Woody4618 Nov 4, 2024
bc5072d
Change create docker files to use solanafoundation
Woody4618 Nov 4, 2024
472ab64
Update image_config.rs
Woody4618 Nov 4, 2024
3bc6875
Update v1.16.27.Dockerfile
Woody4618 Nov 4, 2024
1f242ed
Add new sf images
Woody4618 Nov 4, 2024
2bfe1b2
Add pagination to docker request
Woody4618 Nov 4, 2024
a0e3527
Update v1.14.10.Dockerfile
Woody4618 Nov 4, 2024
bb44148
Use 1.18 installer for old 14 version
Woody4618 Nov 5, 2024
54c3d9c
Add 1.14 releases
Woody4618 Nov 5, 2024
9447198
Skip release 1.14.0
Woody4618 Nov 5, 2024
bd46c4b
Add releases 10-13
Woody4618 Nov 5, 2024
2adccf9
Update image_config.rs
Woody4618 Nov 5, 2024
e89a0e4
Merge pull request #2 from jacobcreech/master
ngundotra Nov 8, 2024
e37701b
Update update_whitelist.yaml
ngundotra Nov 8, 2024
504d22d
Update publish_dockerfile.yaml
ngundotra Nov 9, 2024
602c0cb
Update publish_all_dockerfiles.yaml
ngundotra Nov 9, 2024
779a32b
Update update_whitelist.yaml
ngundotra Nov 10, 2024
ea6ad56
Update image whitelist
ngundotra Nov 10, 2024
89183ae
Merge pull request #3 from solana-developers/autopr-update-image-whit…
ngundotra Nov 11, 2024
7351122
add test to ci
ngundotra Nov 11, 2024
860f918
remove solend
ngundotra Nov 11, 2024
c234251
Merge pull request #5 from solana-developers/tests
ngundotra Nov 11, 2024
161e2cf
Update test.yaml
ngundotra Nov 11, 2024
64a6129
Update test.yaml
ngundotra Nov 11, 2024
b252474
add local build test
ngundotra Nov 11, 2024
28d60bd
add verify_from_image
ngundotra Nov 11, 2024
3a75a2a
separate out tests
ngundotra Nov 11, 2024
0654db3
Merge pull request #6 from solana-developers/local-test
ngundotra Nov 11, 2024
2a7e82f
Update test.yaml
ngundotra Nov 11, 2024
d757efe
Merge branch 'master' into master
ngundotra Nov 11, 2024
363e92f
Add games preset and agave 2.1.0 test
Woody4618 Nov 11, 2024
b055b55
add tests to ci
ngundotra Nov 11, 2024
81e65b3
Merge pull request #7 from solana-developers/add-test-games-preset
ngundotra Nov 11, 2024
b37ba73
Update Cargo.toml
ngundotra Nov 11, 2024
999fd88
Update Dockerfiles
ngundotra Nov 11, 2024
7d177d2
Merge pull request #4 from solana-developers/autopr-update-dockerfiles
ngundotra Nov 11, 2024
7e08626
Update image whitelist
ngundotra Nov 11, 2024
c824705
Merge pull request #8 from solana-developers/autopr-update-image-whit…
ngundotra Nov 11, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 7 additions & 12 deletions .github/workflows/publish_all_dockerfiles.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,7 @@ jobs:
strategy:
matrix:
version: ${{ fromJson(needs.detect_changes.outputs.versions )}}
fail-fast: false
name: Push Docker images to ghcr.io
name: Push Docker images to docker.io
runs-on: ubuntu-latest
permissions:
packages: write
Expand All @@ -56,20 +55,16 @@ jobs:
- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: docker.io
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: |
ghcr.io/${{ github.repository }}
- name: lowercase github.repository_owner
run: |
echo "REPO_OWNER=`echo ${{github.repository_owner}} | tr '[:upper:]' '[:lower:]'`" >>${GITHUB_ENV}
docker.io/solanafoundation/solana-verifiable-build
- name: Build and push Docker images
id: push
Expand All @@ -80,14 +75,14 @@ jobs:
push: true
tags: |
${{ steps.meta.outputs.tags }}
ghcr.io/${{ env.REPO_OWNER }}/solana:${{ matrix.version }}
docker.io/solanafoundation/solana-verifiable-build:${{ matrix.version }}
labels: |
${{ steps.meta.outputs.labels }}
org.opencontainers.image.source=https://github.com/${{ github.repository }}
- name: Generate artifact attestation
uses: actions/attest-build-provenance@v1
with:
subject-name: ghcr.io/${{ env.REPO_OWNER }}/solana
subject-name: index.docker.io/solanafoundation/solana-verifiable-build
subject-digest: ${{ steps.push.outputs.digest }}
push-to-registry: true
18 changes: 7 additions & 11 deletions .github/workflows/publish_dockerfile.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Publish Single Docker Image
name: Publish Docker Image

on:
workflow_dispatch:
Expand All @@ -24,20 +24,16 @@ jobs:
- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: docker.io
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
with:
images: |
ghcr.io/${{ github.repository }}
- name: lowercase github.repository_owner
run: |
echo "REPO_OWNER=`echo ${{github.repository_owner}} | tr '[:upper:]' '[:lower:]'`" >>${GITHUB_ENV}
docker.io/solanafoundation/solana-verifiable-build
- name: Build and push Docker images
id: push
Expand All @@ -48,14 +44,14 @@ jobs:
push: true
tags: |
${{ steps.meta.outputs.tags }}
ghcr.io/${{ env.REPO_OWNER }}/solana:${{ github.event.inputs.version }}
docker.io/solanafoundation/solana-verifiable-build:${{ github.event.inputs.version }}
labels: |
${{ steps.meta.outputs.labels }}
org.opencontainers.image.source=https://github.com/${{ github.repository }}
- name: Generate artifact attestation
uses: actions/attest-build-provenance@v1
with:
subject-name: ghcr.io/${{ env.REPO_OWNER }}/solana
subject-name: index.docker.io/solanafoundation/solana-verifiable-build
subject-digest: ${{ steps.push.outputs.digest }}
push-to-registry: true
39 changes: 39 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: Run Integration Tests

on:
push:
branches: [master]
pull_request:
branches: [master]
workflow_dispatch:

jobs:
test:
name: Run Tests
runs-on: ubuntu-latest
strategy:
fail-fast: false # Continue with other tests even if one fails
matrix:
test_name:
- test_phoenix_v1
- test_squads_v3
- test_drift_v2
- test_marginfi_v2
- test_local_example
- test_verify_from_image
- test_games_preset
- test_agave_2_1
steps:
- uses: actions/checkout@v4

- name: Install Rust
uses: dtolnay/rust-toolchain@stable

- name: Cache dependencies
uses: Swatinem/rust-cache@v2

- name: Build
run: cargo build

- name: Run ${{ matrix.test_name }}
run: cargo test ${{ matrix.test_name }} -- --nocapture
9 changes: 5 additions & 4 deletions .github/workflows/update_whitelist.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,15 @@ name: Update Docker Image Whitelist

on:
workflow_dispatch:
push:
branches:
- master
paths:
- 'docker/**'

permissions:
contents: write
pull-requests: write
packages: read

jobs:
update-docker-image-whitelist:
Expand Down Expand Up @@ -37,9 +41,6 @@ jobs:
uv sync --all-extras --dev
- name: Run generate_dockerfiles.py
env:
USE_GHCR: "true"
GITHUB_TOKEN: ${{ steps.generate-token.outputs.token }}
run: uv run update_image_whitelist.py

- name: Create Pull Request
Expand Down
29 changes: 21 additions & 8 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "solana-verify"
version = "0.2.14"
version = "0.3.0"
edition = "2021"
description = "A CLI tool for building verifiable Solana programs"
license = "MIT"
Expand All @@ -18,6 +18,7 @@ indicatif = "0.17.7"
lazy_static = "1.4.0"
pathdiff = "0.2.0" # missing in workspace
reqwest = "0.11.23"
regex = "1.11.1"
serde = { version = "1.0.195", features = ["derive"] }
serde_json = "1.0.111"
sha256 = "1.1.1" # missing in workspace
Expand Down
28 changes: 7 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ If you're working in a repository with multiple programs, in order to build a sp
solana-verify build --library-name $PROGRAM_LIB_NAME
```

The string that's passed in must be the *lib* name and NOT the *package* name. These are usually the same, but the distinction is important.
The string that's passed in must be the _lib_ name and NOT the _package_ name. These are usually the same, but the distinction is important.
![image](https://github.com/Ellipsis-Labs/solana-verifiable-build/assets/61092285/0427e88f-cc0f-465f-b2e9-747ea1b8d3af)

(NOTE: These commands can take up to 30 minutes if you're running on an M1 Macbook Pro. This has to do with the architecture emulation required to ensure build determinism. For best performance, it is recommended to run builds on a Linux machine running x86)
Expand Down Expand Up @@ -105,8 +105,8 @@ solana-verify verify-from-repo -um --program-id PhoeNiXZ8ByJGLkxNfZRnkUfjvmuYqLR
Final Output:

```
Executable Program Hash from repo: 7c76ba11f8742d040b1a874d943c2096f1b3a48db14d2a5b411fd5dad5d1bc2d
On-chain Program Hash: 7c76ba11f8742d040b1a874d943c2096f1b3a48db14d2a5b411fd5dad5d1bc2d
Executable Program Hash from repo: 6877a5b732b3494b828a324ec846d526d962223959534dbaf4209e0da3b2d6a9
On-chain Program Hash: 6877a5b732b3494b828a324ec846d526d962223959534dbaf4209e0da3b2d6a9
Program hash matches ✅
```

Expand Down Expand Up @@ -143,28 +143,14 @@ Program hash matches ✅
### Marginfi V2

```
solana-verify verify-from-repo -um --program-id MFv2hWf31Z9kbCa1snEPYctwafyhdvnV7FZnsebVacA https://github.com/mrgnlabs/marginfi-v2 --library-name marginfi -- --features mainnet-beta
solana-verify verify-from-repo -um --program-id MFv2hWf31Z9kbCa1snEPYctwafyhdvnV7FZnsebVacA https://github.com/mrgnlabs/marginfi-v2 --commit-hash d33e649e415c354cc2a1e3c49131725552d69ba0 --library-name marginfi -- --features mainnet-beta
```

Final Output:

```
Executable Program Hash from repo: 7b37482dd6b2159932b5c2595bc6ce62cf6e587ae67f237c8152b802bf7d7bb8
On-chain Program Hash: 7b37482dd6b2159932b5c2595bc6ce62cf6e587ae67f237c8152b802bf7d7bb8
Program hash matches ✅
```

### Solend

```
solana-verify verify-from-repo -um --program-id So1endDq2YkqhipRh3WViPa8hdiSpxWy6z3Z6tMCpAo https://github.com/solendprotocol/solana-program-library --library-name solend_program -b ellipsislabs/solana:1.14.10 --bpf
```

Final Output:

```
Executable Program Hash from repo: f89a43677ab106d2e50d3c41b656d067b6142c02a2508caca1c11c0a963d3b17
On-chain Program Hash: f89a43677ab106d2e50d3c41b656d067b6142c02a2508caca1c11c0a963d3b17
Executable Program Hash from repo: 890d68f48f96991016222b1fcbc2cc81b8ef2dcbf280c44fe378c523c108fad5
On-chain Program Hash: 890d68f48f96991016222b1fcbc2cc81b8ef2dcbf280c44fe378c523c108fad5
Program hash matches ✅
```

Expand Down Expand Up @@ -213,7 +199,7 @@ Which will return the following hash:

By default, this command will strip any trailing zeros away from the program executable and run the sha256 algorithm against it to compute the hash.

To manually verify this program, one could run the following from the root of this repository, which builds a program from source code and computes a hash. *This command takes a long time because it is building the binary in a Docker container*
To manually verify this program, one could run the following from the root of this repository, which builds a program from source code and computes a hash. _This command takes a long time because it is building the binary in a Docker container_

```
solana-verify build $PWD/examples/hello_world
Expand Down
14 changes: 14 additions & 0 deletions docker/v1.10.1.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM --platform=linux/amd64 rust@sha256:b33af7ffbb3bf98940f8326d9563ca403e315a33d9434303df76bdc325b0f5c4

RUN apt-get update && apt-get install -qy git gnutls-bin curl

# Download and modify the Solana install script to install the specified version
RUN curl -sSfL "https://release.solana.com/v1.18.20/install" -o solana_install.sh && \
chmod +x solana_install.sh && \
sed -i "s/^SOLANA_INSTALL_INIT_ARGS=.*/SOLANA_INSTALL_INIT_ARGS=v1.10.1/" solana_install.sh && \
./solana_install.sh && \
rm solana_install.sh

ENV PATH="/root/.local/share/solana/install/active_release/bin:$PATH"
WORKDIR /build
CMD /bin/bash
14 changes: 14 additions & 0 deletions docker/v1.10.10.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM --platform=linux/amd64 rust@sha256:b33af7ffbb3bf98940f8326d9563ca403e315a33d9434303df76bdc325b0f5c4

RUN apt-get update && apt-get install -qy git gnutls-bin curl

# Download and modify the Solana install script to install the specified version
RUN curl -sSfL "https://release.solana.com/v1.18.20/install" -o solana_install.sh && \
chmod +x solana_install.sh && \
sed -i "s/^SOLANA_INSTALL_INIT_ARGS=.*/SOLANA_INSTALL_INIT_ARGS=v1.10.10/" solana_install.sh && \
./solana_install.sh && \
rm solana_install.sh

ENV PATH="/root/.local/share/solana/install/active_release/bin:$PATH"
WORKDIR /build
CMD /bin/bash
14 changes: 14 additions & 0 deletions docker/v1.10.11.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM --platform=linux/amd64 rust@sha256:b33af7ffbb3bf98940f8326d9563ca403e315a33d9434303df76bdc325b0f5c4

RUN apt-get update && apt-get install -qy git gnutls-bin curl

# Download and modify the Solana install script to install the specified version
RUN curl -sSfL "https://release.solana.com/v1.18.20/install" -o solana_install.sh && \
chmod +x solana_install.sh && \
sed -i "s/^SOLANA_INSTALL_INIT_ARGS=.*/SOLANA_INSTALL_INIT_ARGS=v1.10.11/" solana_install.sh && \
./solana_install.sh && \
rm solana_install.sh

ENV PATH="/root/.local/share/solana/install/active_release/bin:$PATH"
WORKDIR /build
CMD /bin/bash
14 changes: 14 additions & 0 deletions docker/v1.10.12.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM --platform=linux/amd64 rust@sha256:b33af7ffbb3bf98940f8326d9563ca403e315a33d9434303df76bdc325b0f5c4

RUN apt-get update && apt-get install -qy git gnutls-bin curl

# Download and modify the Solana install script to install the specified version
RUN curl -sSfL "https://release.solana.com/v1.18.20/install" -o solana_install.sh && \
chmod +x solana_install.sh && \
sed -i "s/^SOLANA_INSTALL_INIT_ARGS=.*/SOLANA_INSTALL_INIT_ARGS=v1.10.12/" solana_install.sh && \
./solana_install.sh && \
rm solana_install.sh

ENV PATH="/root/.local/share/solana/install/active_release/bin:$PATH"
WORKDIR /build
CMD /bin/bash
14 changes: 14 additions & 0 deletions docker/v1.10.13.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
FROM --platform=linux/amd64 rust@sha256:b33af7ffbb3bf98940f8326d9563ca403e315a33d9434303df76bdc325b0f5c4

RUN apt-get update && apt-get install -qy git gnutls-bin curl

# Download and modify the Solana install script to install the specified version
RUN curl -sSfL "https://release.solana.com/v1.18.20/install" -o solana_install.sh && \
chmod +x solana_install.sh && \
sed -i "s/^SOLANA_INSTALL_INIT_ARGS=.*/SOLANA_INSTALL_INIT_ARGS=v1.10.13/" solana_install.sh && \
./solana_install.sh && \
rm solana_install.sh

ENV PATH="/root/.local/share/solana/install/active_release/bin:$PATH"
WORKDIR /build
CMD /bin/bash
Loading