Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
21 changes: 7 additions & 14 deletions .github/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,11 +1,8 @@
# Use Ubuntu as base image
FROM denoland/deno:ubuntu-2.6.5

FROM oven/bun:1-ubuntu

# Set environment variables
ENV DEBIAN_FRONTEND=noninteractive
ENV DENO_INSTALL=/root/.deno
ENV PATH=$DENO_INSTALL/bin:$PATH

# Update package list and install required dependencies
RUN apt-get update && apt-get install -y \
Expand All @@ -18,7 +15,7 @@ RUN apt-get update && apt-get install -y \
sed \
# We have some scripts that use lsof
lsof \
# iproute2 is required for ss command - for dkill.
# iproute2 is required for ss command - for fkill.
iproute2 \
# xz is required for compactc
xz-utils \
Expand All @@ -33,8 +30,8 @@ RUN curl -fsSL https://deb.nodesource.com/setup_24.x | bash - \
&& apt-get install -y nodejs \
&& rm -rf /var/lib/apt/lists/*

# Verify Deno installation
RUN deno --version
# Verify Bun installation
RUN bun --version

# Verify Node.js installation
RUN node --version && npm --version
Expand Down Expand Up @@ -73,21 +70,17 @@ RUN chmod +x /app/patch.sh
# Clone the repository
COPY . .

# Ensure the script can run tests properly in Docker
RUN echo "export DENO_DIR=/tmp/.deno" >> /root/.bashrc

# Set environment variables for better script execution
ENV NODE_ENV=development
ENV DENO_DIR=/tmp/.deno

RUN deno install --allow-scripts
RUN bun install
RUN /app/patch.sh

RUN deno task -r contract:compile
RUN bun run --filter '*' contract:compile

# START E2E TESTS
# Launching processes en parallel generates issues on linux
ENV EFFECTSTREAM_ORCHESTRATOR_SERIAL=true
# Show Effectstream logs
ENV EFFECTSTREAM_STDOUT=true
CMD ["deno", "task", "-f", "@e2e/node", "e2e"]
CMD ["bun", "run", "--filter", "@e2e/node", "e2e"]
22 changes: 0 additions & 22 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,26 +1,4 @@
{
"deno.enable": true,
"deno.documentPreloadLimit": 10000,
"deno.lint": true,
"deno.disablePaths": [
"packages/build-tools/explorer",
"templates",
"templates/chess",
"templates/evm-midnight",
"templates/minimal",
"templates/multi-chain-token-transfer",
"templates/night-bitcoin",
"templates/rock-paper-scissors",
"templates/world-map-2d",
"docs/site"
],
"editor.formatOnSave": false,
"editor.defaultFormatter": "denoland.vscode-deno",
"[typescript]": {
"editor.defaultFormatter": "denoland.vscode-deno"
},
"[javascript]": {
"editor.defaultFormatter": "denoland.vscode-deno"
},
"[markdown]": { "editor.defaultFormatter": null }
}
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,15 @@
Start at [Effectstream's Template](./templates/evm-midnight/) for quickstart
project

## Bun
```sh
rm -rf bun.lock && \
bun install && \
bun run --filter '@e2e/midnight-contract-counter-basic' contract:compile && \
bun run --filter '@e2e/midnight-contract-eip-20' contract:compile && \
DISABLE_EVM=true DISABLE_BITCOIN=true DISABLE_AVAIL=true bun run --filter @e2e/node e2e
```

## Testing Development

Effectstream development mode & tests can be run through e2e testing environment.
Expand Down
Loading