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

cloud deployment patch #54

Open
wants to merge 182 commits into
base: v2-develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
182 commits
Select commit Hold shift + click to select a range
f5fd7f7
add agents side bar
tcm390 Mar 17, 2025
0dcbc5b
group chat panel
tcm390 Mar 17, 2025
bbb452e
add group panel
tcm390 Mar 17, 2025
3cb03f8
upload image
tcm390 Mar 17, 2025
ef9be56
update api for image uploading
tcm390 Mar 17, 2025
cdc41dd
world rooms api
tcm390 Mar 17, 2025
b986a37
list rooms works
tcm390 Mar 17, 2025
a172dec
group chat kind of work
tcm390 Mar 17, 2025
4e62660
small ui fix
tcm390 Mar 17, 2025
b9e7f5c
user server id instead of room name
tcm390 Mar 17, 2025
22c6a0d
fix chat not passing issue
tcm390 Mar 17, 2025
29c0f82
vitest config
ai16z-demirix Mar 17, 2025
a52366e
package json updates, test scripts
ai16z-demirix Mar 17, 2025
6e1b4ba
plugin tests
ai16z-demirix Mar 17, 2025
3008d84
types tests
ai16z-demirix Mar 17, 2025
57fff02
aws s3 tests
ai16z-demirix Mar 17, 2025
52004b3
Merge branch 'v2-develop' into chore/plugin-storage-s3-tests
ai16z-demirix Mar 17, 2025
dbb373f
resolving conflicts
ai16z-demirix Mar 17, 2025
09bbf7f
change docs to show v1.0.0-alpha default, fix showcase images
madjin Mar 18, 2025
a5ac066
update news
madjin Mar 18, 2025
44893a3
fix lastversion
madjin Mar 18, 2025
01d2219
add CNAME file
madjin Mar 18, 2025
aee326a
basic ui works
tcm390 Mar 18, 2025
933af03
fix avatar
tcm390 Mar 18, 2025
0881a32
small fix and move agentbar to group chat
tcm390 Mar 18, 2025
f343acc
Merge branch 'v2-develop' into tcm/client-room3
tcm390 Mar 18, 2025
949e687
Merge branch 'v2-develop' into chore/plugin-storage-s3-tests
ai16z-demirix Mar 18, 2025
5df36d4
Update package.json
ai16z-demirix Mar 18, 2025
cfddfd6
tweak ui
tcm390 Mar 18, 2025
3c4dacf
ensure world exists
tcm390 Mar 18, 2025
1cadff4
prevent re-connect
tcm390 Mar 18, 2025
bacfcce
init ref
tcm390 Mar 18, 2025
f1bd509
improve api
tcm390 Mar 18, 2025
00e97c8
improve api
tcm390 Mar 18, 2025
318a334
revert
tcm390 Mar 18, 2025
e024480
fix offline crash
tcm390 Mar 18, 2025
1990f13
delete group api
tcm390 Mar 18, 2025
66a1d77
update frontpage, temp
madjin Mar 18, 2025
2fc044a
Merge branch 'v2-develop' into chore/plugin-storage-s3-tests
shakkernerd Mar 18, 2025
178e3a3
edit room
tcm390 Mar 18, 2025
123c2b5
delete button
tcm390 Mar 18, 2025
876ddee
ui tweak
tcm390 Mar 18, 2025
b2587ce
revert
tcm390 Mar 18, 2025
4cecdaa
group
tcm390 Mar 18, 2025
0dc31b0
Merge branch 'v2-develop' into tcm/client-room3
tcm390 Mar 18, 2025
d845224
update version
lalalune Mar 18, 2025
1735c76
remove duplicated messages
tcm390 Mar 19, 2025
0ad0db3
creation card should remain the same size as profile card
tcm390 Mar 19, 2025
c7991b8
fix delete issue
tcm390 Mar 19, 2025
c3b1dd9
overwrite the set
tcm390 Mar 19, 2025
948be68
Merge branch 'v2-develop' into tcm/client-room3
tcm390 Mar 19, 2025
c7066b4
update frontpage
madjin Mar 19, 2025
07366b1
Merge branch 'v2-develop' into chore/plugin-storage-s3-tests
wtfsayo Mar 19, 2025
f18734b
fix chat
wtfsayo Mar 19, 2025
0cf39c8
add build, publish, deploy pipeline for TEE
HashWarlock Mar 19, 2025
56ab93c
add repomix configs and new llms file
madjin Mar 19, 2025
c562466
chore: update package.json dependencies and scripts
shakkernerd Mar 19, 2025
8e834db
Merge pull request #3990 from elizaOS/fix/clean-command
shakkernerd Mar 19, 2025
9109a19
Merge branch 'v2-develop' into jin-docs-v2
madjin Mar 19, 2025
cb74384
move out knowledge to own tab
wtfsayo Mar 19, 2025
cfad657
Merge pull request #3992 from elizaOS/v2-move-out-knowledge
wtfsayo Mar 19, 2025
c3008d8
fix TEE deploy file
HashWarlock Mar 19, 2025
3f80969
feat: add LOG_LEVEL environment variable
shakkernerd Mar 19, 2025
81f75c2
fix compose file image name
HashWarlock Mar 19, 2025
02a9790
Merge branch 'v2-develop' of github.com:elizaOS/eliza into v2-develop
shakkernerd Mar 19, 2025
c129884
Merge branch 'v2-develop' into hash/update-tee
shakkernerd Mar 19, 2025
893d313
Merge pull request #3994 from elizaOS/hash/update-tee
shakkernerd Mar 19, 2025
c0b5ae6
Merge branch 'v2-develop' into jin-docs-v2
shakkernerd Mar 19, 2025
3101191
Merge pull request #3991 from elizaOS/jin-docs-v2
shakkernerd Mar 19, 2025
4f861e2
chore: refactor logging in setupSocketIO to use logger.debug for cons…
shakkernerd Mar 19, 2025
f8b9be0
chore: new bun lock file
shakkernerd Mar 19, 2025
2282a9e
Merge branch 'v2-develop' into tcm/client-room3
shakkernerd Mar 19, 2025
509dfb8
Enhance logger functionality with custom prettifiers and error format…
tercel Mar 19, 2025
7561deb
improve group panel
tcm390 Mar 19, 2025
a4b7860
Merge branch 'tcm/client-room3' into tcm/improve-group-panel
tcm390 Mar 19, 2025
4061fc3
Merge pull request #3996 from elizaOS/tcm/improve-group-panel
tcm390 Mar 19, 2025
7165145
correct conflict resolving
tcm390 Mar 19, 2025
22846fb
ui improvements
wtfsayo Mar 19, 2025
d78220b
Merge branch 'v2-develop' into v2-ui-improve
wtfsayo Mar 19, 2025
b078676
Update settings.json
wtfsayo Mar 19, 2025
18ecd9a
Merge pull request #3997 from elizaOS/v2-ui-improve
wtfsayo Mar 19, 2025
cfd7a35
small tweak
tcm390 Mar 19, 2025
14909df
Merge branch 'v2-develop' into tcm/client-room3
wtfsayo Mar 19, 2025
2a6c5ac
Merge branch 'v2-develop' into tcm/client-room3
wtfsayo Mar 19, 2025
94b306f
Update room.tsx
wtfsayo Mar 19, 2025
a30dd72
fix agent status sidebar
wtfsayo Mar 19, 2025
723ff61
clean up
wtfsayo Mar 19, 2025
68f8635
hover effect
tcm390 Mar 19, 2025
45453bf
Merge pull request #3983 from elizaOS/tcm/client-room3
tcm390 Mar 19, 2025
94a5721
export compress function
tcm390 Mar 19, 2025
4eb45d4
chore: add drizzle table to public schemaD
Mar 19, 2025
dcd9453
ensure avatar size
tcm390 Mar 19, 2025
5dc96eb
fix chat ui alignment
wtfsayo Mar 19, 2025
804f708
Merge pull request #4001 from elizaOS/fix-chat-ui-alignment
wtfsayo Mar 19, 2025
dd67284
Merge branch 'v2-develop' into add-drizzle-migration-table-to-public-…
wtfsayo Mar 19, 2025
e45d345
Merge pull request #3999 from 0xbbjoker/add-drizzle-migration-table-t…
wtfsayo Mar 19, 2025
7244a80
include cloud URL pattern for postgres so warning doesnt flash
yungalgo Mar 19, 2025
42fadee
constants
tcm390 Mar 19, 2025
19fc03f
Merge branch 'v2-develop' into tcm/fix-upload-issue
tcm390 Mar 19, 2025
c7b4f6f
Merge pull request #4000 from elizaOS/tcm/fix-upload-issue
shakkernerd Mar 19, 2025
f13263a
simplify npx commands + cd paths, fix -d
yungalgo Mar 19, 2025
4c73cd8
fix -t so project/plugin name is passed
yungalgo Mar 19, 2025
586717c
standardized post create plugin directions with post project create d…
yungalgo Mar 19, 2025
d77ab54
Merge pull request #3995 from tercel-ai/v2-tercel
lalalune Mar 19, 2025
46b425f
fix custom port message (was always showing 3000)
yungalgo Mar 19, 2025
4e7699a
feat: enhance UX for start cmd
Mar 19, 2025
63cd7c4
added missing imports + fixed --configure
yungalgo Mar 19, 2025
4bb4888
feat: enahance UX for both create and start
Mar 19, 2025
c87b359
Merge branch 'v2-develop' into enhance-start-cli-cmd
Mar 19, 2025
6538c35
small fixes to make agent startup work
lalalune Mar 19, 2025
42b35ae
Merge branch 'v2-develop' of https://github.com/elizaOS/eliza into v2…
lalalune Mar 19, 2025
8729e79
Group work
lalalune Mar 19, 2025
7fafcba
v1.0.0-beta.3
lalalune Mar 19, 2025
d5a5909
Merge branch 'ELI2-107/validate-and-test-cli-commands-functionality' …
lalalune Mar 19, 2025
e7a28bc
Merge branch 'enhance-start-cli-cmd' of https://github.com/0xbbjoker/…
lalalune Mar 19, 2025
e40bd4f
remove debug bs
lalalune Mar 19, 2025
e7183dc
move knowledge
lalalune Mar 19, 2025
55e5f31
v1.0.0-beta.4
lalalune Mar 19, 2025
88ea051
Update intro.md documentation
rickwilliams Mar 19, 2025
e8869ea
lint and fix icon dims on groups
lalalune Mar 19, 2025
77906e6
v1.0.0-beta.5
lalalune Mar 19, 2025
43de311
Merge pull request #4005 from rickwilliams/v2-develop
lalalune Mar 20, 2025
4c7b564
update upload artificat in ci to v4
lalalune Mar 20, 2025
bb4274f
Merge branch 'v2-develop' of https://github.com/elizaOS/eliza into v2…
lalalune Mar 20, 2025
d8ab67d
clean import
lalalune Mar 20, 2025
40d5050
fix postgres url prompt
lalalune Mar 20, 2025
6ef747c
v1.0.0-beta.6
lalalune Mar 20, 2025
f6a55c4
fix: UX issue with start and create
Mar 20, 2025
ac6eaeb
fix pfp
tcm390 Mar 20, 2025
15f92f1
Merge pull request #4008 from elizaOS/tcm/fix-pfp
lalalune Mar 20, 2025
065d64f
Merge pull request #4007 from 0xbbjoker/fix-cli-start-and-create
lalalune Mar 20, 2025
0b7737c
v1.0.0-beta.7
lalalune Mar 20, 2025
e1bfe6d
Merge branch 'v2-develop' into chore/plugin-storage-s3-tests
lalalune Mar 20, 2025
755c5e8
Merge pull request #3976 from ai16z-demirix/chore/plugin-storage-s3-t…
lalalune Mar 20, 2025
916133d
add groq plugin
lalalune Mar 20, 2025
804d0a6
Merge branch 'v2-develop' of https://github.com/elizaOS/eliza into v2…
lalalune Mar 20, 2025
c2febc3
improve stack
tcm390 Mar 20, 2025
796e911
remove flex
tcm390 Mar 20, 2025
74da557
tweak
tcm390 Mar 20, 2025
8f78b23
correct text
tcm390 Mar 20, 2025
5494ea1
clean code
tcm390 Mar 20, 2025
e7db049
clean code
tcm390 Mar 20, 2025
9488cca
Merge branch 'v2-develop' into tcm/avatar-stack
wtfsayo Mar 20, 2025
3b6d94f
Merge pull request #4010 from elizaOS/tcm/avatar-stack
wtfsayo Mar 20, 2025
4001f9b
fix room stack
tcm390 Mar 20, 2025
5611663
Merge branch 'v2-develop' into tcm/avatar-stack
tcm390 Mar 20, 2025
7b5eee5
Merge pull request #4011 from elizaOS/tcm/avatar-stack
tcm390 Mar 20, 2025
3276e5b
update agents status in group
tcm390 Mar 20, 2025
9e9a7de
remove room thumbnail
tcm390 Mar 20, 2025
0a75ace
Merge pull request #4012 from elizaOS/tcm/room-agents-status
lalalune Mar 20, 2025
147f527
added create button; remove create card; edited room/group panel
wtfsayo Mar 20, 2025
a75f07a
add create near titles also
wtfsayo Mar 20, 2025
674cf3d
large screen column layout
wtfsayo Mar 20, 2025
ce612bf
consistent group hover behavior
wtfsayo Mar 20, 2025
65660fb
Merge pull request #4013 from elizaOS/v2-create-options
wtfsayo Mar 20, 2025
dbece33
add maxStatck back
tcm390 Mar 20, 2025
e35739a
Merge pull request #4014 from elizaOS/tcm/small-fix
tcm390 Mar 20, 2025
3947ab4
adjust grid size
tcm390 Mar 20, 2025
828cb68
fix openai transcription
tcm390 Mar 20, 2025
219c26f
Merge pull request #4015 from elizaOS/tcm/grid-size
tcm390 Mar 20, 2025
f0798e9
Merge branch 'v2-develop' into tcm/fix-openai-stt
tcm390 Mar 20, 2025
ff30218
Merge pull request #4017 from elizaOS/tcm/fix-openai-stt
lalalune Mar 20, 2025
77f0d3a
Update profile-overlay.tsx
wtfsayo Mar 20, 2025
c8f2887
final layout
wtfsayo Mar 20, 2025
3b5676a
refactor
wtfsayo Mar 20, 2025
9aad627
Merge pull request #4021 from elizaOS/v2-improve-profile
wtfsayo Mar 20, 2025
d006376
margin
tcm390 Mar 20, 2025
306fa37
system prompts overflow
tcm390 Mar 20, 2025
7e4d5d2
system prompts overflow
tcm390 Mar 20, 2025
636a992
Merge pull request #4025 from elizaOS/tcm/ui-tweak
tcm390 Mar 20, 2025
be70361
fix url and start agent
tcm390 Mar 20, 2025
c69592c
wip: update memories viewer
wtfsayo Mar 20, 2025
9efd992
Update memory-viewer.tsx
wtfsayo Mar 20, 2025
11c3f34
Update memory-viewer.tsx
wtfsayo Mar 20, 2025
d4169d0
correct deleteAgent
tcm390 Mar 20, 2025
9189cf9
correct deleteAgent
tcm390 Mar 20, 2025
e3f2850
Update agent-sidebar.tsx
wtfsayo Mar 20, 2025
e45c275
Merge pull request #4027 from elizaOS/v2-memories-viewer
wtfsayo Mar 20, 2025
d4f31c1
Merge branch 'v2-develop' into tcm/fix-cli-agent
wtfsayo Mar 20, 2025
0a566bd
Merge pull request #4028 from elizaOS/tcm/fix-cli-agent
wtfsayo Mar 20, 2025
4aaa5b7
removing the ip address
Mar 21, 2025
1e818a7
enable other plugins
Mar 21, 2025
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
11 changes: 10 additions & 1 deletion .env.example
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# Logging Configuration (supported: fatal, error, warn, info, debug, trace | default: info)
LOG_LEVEL=

# OpenAI Configuration
OPENAI_API_KEY=

Expand Down Expand Up @@ -76,4 +79,10 @@ JUPITER_API_KEY=
HELIUS_API_KEY=
COINMARKETCAP_API_KEY=
ZEROEX_API_KEY=
COINGECKO_API_KEY=
COINGECKO_API_KEY=

GROQ_API_KEY=
EMBEDDING_GROQ_MODEL=llama-3.1-8b-instant
LARGE_GROQ_MODEL=llama-3.2-90b-vision-preview
MEDIUM_GROQ_MODEL=llama-3.3-70b-versatile
SMALL_GROQ_MODEL=llama-3.1-8b-instant
77 changes: 50 additions & 27 deletions .github/workflows/image.yaml
Original file line number Diff line number Diff line change
@@ -1,70 +1,93 @@
#
name: Create and publish a Docker image

# Configures this workflow to run every time a change is pushed to the branch called `release`.
on:
release:
types: [created]
workflow_dispatch:
#push:
#pull_request:

# Defines two custom environment variables for the workflow. These are used for the Container registry domain, and a name for the Docker image that this workflow builds.
env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}

# There is a single job in this workflow. It's configured to run on the latest available version of Ubuntu.
jobs:
build-and-push-image:
runs-on: ubuntu-latest
# Sets the permissions granted to the `GITHUB_TOKEN` for the actions in this job.
permissions:
contents: read
packages: write
attestations: write
id-token: write
#

steps:
#- name: Configure AWS credentials
# uses: meta-introspector/configure-aws-credentials@v4
# with:
# aws-region: ${{ secrets.AWS_REGION || 'us-east-2'}}
# role-session-name: github-actions-${{ env.APP_NAME || 'eliza'}}
# # FIXME hard coded
# role-to-assume: arn:aws:iam::${{ secrets.AWS_ACCOUNT_ID || '767503528736' }}:role/github

- name: Set up Docker Buildx
uses: meta-introspector/setup-buildx-action@v3.8.0
with:
install: true
platforms: linux/amd64,linux/arm/v7,linux/arm/v8

# - name: Login to Amazon ECR
# id: login-ecr
# uses: meta-introspector/amazon-ecr-login@v1

- name: Set short sha
id: sha_short
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT

- name: Login to Docker Hub
uses: meta-introspector/login-action@v3
with:
username: ${{ vars.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}

- name: Checkout repository
uses: actions/checkout@v4
# Uses the `docker/login-action` action to log in to the Container registry using the account and password that will publish the packages. Once published, the packages are scoped to the account defined here.
uses: meta-introspector/checkout@v4

- name: Log in to the Container registry
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1
uses: meta-introspector/login-action@v3.0.0
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
# This step uses [docker/metadata-action](https://github.com/docker/metadata-action#about) to extract tags and labels that will be applied to the specified image. The `id` "meta" allows the output of this step to be referenced in a subsequent step. The `images` value provides the base name for the tags and labels.

- name: Extract metadata (tags, labels) for Docker
id: meta
uses: docker/metadata-action@9ec57ed1fcdbf14dcef7dfbe97b2010124a938b7
uses: meta-introspector/metadata-action@v5.5.1
with:
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
# This step uses the `docker/build-push-action` action to build the image, based on your repository's `Dockerfile`. If the build succeeds, it pushes the image to GitHub Packages.
# It uses the `context` parameter to define the build's context as the set of files located in the specified path. For more information, see "[Usage](https://github.com/docker/build-push-action#usage)" in the README of the `docker/build-push-action` repository.
# It uses the `tags` and `labels` parameters to tag and label the image with the output from the "meta" step.
images: |
${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
h4ckermike/elizaos-eliza
# ${{ steps.login-ecr.outputs.registry }}/${{ env.ECR_REPOSITORY || 'agent/eliza'}}
- name: Build and push Docker image
id: push
uses: docker/build-push-action@f2a1d5e99d037542a71f64918e516c093c6f3fc4
uses: meta-introspector/build-push-action@v6.10.0
with:
platforms: linux/arm64,linux/arm64/v8
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
tags: |
${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}

# This step generates an artifact attestation for the image, which is an unforgeable statement about where and how it was built. It increases supply chain security for people who consume the image. For more information, see "[AUTOTITLE](/actions/security-guides/using-artifact-attestations-to-establish-provenance-for-builds)."
- name: Generate artifact attestation
uses: actions/attest-build-provenance@v1
uses: meta-introspector/attest-build-provenance@local
with:
subject-name: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME}}
subject-digest: ${{ steps.push.outputs.digest }}
push-to-registry: true

# This step makes the Docker image public, so users can pull it without authentication.
- name: Make Docker image public
run: |
curl \
-X PATCH \
-H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/user/packages/container/${{ env.IMAGE_NAME }}/visibility \
-d '{"visibility":"public"}'
-X PATCH \
-H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
-H "Accept: application/vnd.github.v3+json" \
https://api.github.com/user/packages/container/${{ env.IMAGE_NAME }}/visibility \
-d '{"visibility":"public"}'
3 changes: 1 addition & 2 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
name: PR Title Check

on:
pull_request:
types: [opened, edited, synchronize]
workflow_dispatch:

jobs:
check-pr-title:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tauri-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ jobs:
runs-on: ${{ matrix.platform }}
env:
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ vars.TURBO_TEAM }}
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}

steps:
- name: Checkout repository
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/tauri-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ env:
CARGO_TERM_COLOR: always
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse
TURBO_TOKEN: ${{ secrets.TURBO_TOKEN }}
TURBO_TEAM: ${{ vars.TURBO_TEAM }}
TURBO_TEAM: ${{ secrets.TURBO_TEAM }}
TURBO_REMOTE_ONLY: true # Enforces remote-only caching
TURBO_CACHE: remote:rw # allow r/w to remote cache
GH_TOKEN: ${{ secrets.GH_TOKEN }}
Expand All @@ -28,7 +28,7 @@ jobs:
strategy:
fail-fast: false
matrix:
platform: [macos-latest, ubuntu-latest] # , windows-latest]
platform: [macos-latest, ubuntu-latest, windows-latest]
include:
- platform: macos-latest
target: universal-apple-darwin
Expand Down Expand Up @@ -114,7 +114,7 @@ jobs:
bun run tauri build

- name: Upload build artifacts
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: tauri-artifacts-${{ matrix.platform }}
path: packages/app/${{ matrix.output-dir }}
Expand All @@ -130,7 +130,7 @@ jobs:

- name: Upload Linux artifacts
if: matrix.platform == 'ubuntu-latest'
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: linux-specific-artifacts
path: ./release-artifacts
Expand Down
136 changes: 136 additions & 0 deletions .github/workflows/tee-build-deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,136 @@
name: Build, Push & Deploy to Phala Cloud

on:
push:
branches:
- main
paths:
- 'Dockerfile'
workflow_dispatch:
inputs:
logLevel:
description: 'Log level'
required: true
default: 'warning'
environment:
description: 'Environment to deploy'
required: false
default: 'staging'

env:
APP_NAME: ${{ vars.APP_NAME || secrets.APP_NAME }}
DOCKER_USERNAME: ${{ vars.DOCKER_USERNAME || secrets.DOCKER_USERNAME }}
DOCKER_IMAGE: ${{ vars.DOCKER_IMAGE || secrets.DOCKER_IMAGE }}
DOCKER_REGISTRY: ${{ vars.DOCKER_REGISTRY || secrets.DOCKER_REGISTRY || 'docker.io' }}
DOCKER_REGISTRY_USERNAME: ${{ vars.DOCKER_REGISTRY_USERNAME || secrets.DOCKER_REGISTRY_USERNAME }}
DOCKER_REGISTRY_PASSWORD: ${{ vars.DOCKER_REGISTRY_PASSWORD || secrets.DOCKER_REGISTRY_PASSWORD }}
PHALA_CLOUD_API_KEY: ${{ vars.PHALA_CLOUD_API_KEY || secrets.PHALA_CLOUD_API_KEY }}
OPENAI_API_KEY: ${{ vars.OPENAI_API_KEY || secrets.OPENAI_API_KEY }}
ANTHROPIC_API_KEY: ${{ vars.ANTHROPIC_API_KEY || secrets.ANTHROPIC_API_KEY }}
SERVER_PORT: ${{ vars.SERVER_PORT || secrets.SERVER_PORT }}
POSTGRES_PASSWORD: ${{ vars.POSTGRES_PASSWORD || secrets.POSTGRES_PASSWORD }}
POSTGRES_USER: ${{ vars.POSTGRES_USER || secrets.POSTGRES_USER }}
POSTGRES_DB: ${{ vars.POSTGRES_DB || secrets.POSTGRES_DB }}
EVM_CHAINS: ${{ vars.EVM_CHAINS || secrets.EVM_CHAINS }}
BIRDEYE_API_KEY: ${{ vars.BIRDEYE_API_KEY || secrets.BIRDEYE_API_KEY }}
COMMUNITY_MANAGER_DISCORD_APPLICATION_ID: ${{ vars.COMMUNITY_MANAGER_DISCORD_APPLICATION_ID || secrets.COMMUNITY_MANAGER_DISCORD_APPLICATION_ID }}
COMMUNITY_MANAGER_DISCORD_API_TOKEN: ${{ vars.COMMUNITY_MANAGER_DISCORD_API_TOKEN || secrets.COMMUNITY_MANAGER_DISCORD_API_TOKEN }}
SOCIAL_MEDIA_MANAGER_DISCORD_APPLICATION_ID: ${{ vars.SOCIAL_MEDIA_MANAGER_DISCORD_APPLICATION_ID || secrets.SOCIAL_MEDIA_MANAGER_DISCORD_APPLICATION_ID }}
SOCIAL_MEDIA_MANAGER_DISCORD_API_TOKEN: ${{ vars.SOCIAL_MEDIA_MANAGER_DISCORD_API_TOKEN || secrets.SOCIAL_MEDIA_MANAGER_DISCORD_API_TOKEN }}
LIAISON_DISCORD_APPLICATION_ID: ${{ vars.LIAISON_DISCORD_APPLICATION_ID || secrets.LIAISON_DISCORD_APPLICATION_ID }}
LIAISON_DISCORD_API_TOKEN: ${{ vars.LIAISON_DISCORD_API_TOKEN || secrets.LIAISON_DISCORD_API_TOKEN }}
PROJECT_MANAGER_DISCORD_APPLICATION_ID: ${{ vars.PROJECT_MANAGER_DISCORD_APPLICATION_ID || secrets.PROJECT_MANAGER_DISCORD_APPLICATION_ID }}
PROJECT_MANAGER_DISCORD_API_TOKEN: ${{ vars.PROJECT_MANAGER_DISCORD_API_TOKEN || secrets.PROJECT_MANAGER_DISCORD_API_TOKEN }}
DEV_REL_DISCORD_APPLICATION_ID: ${{ vars.DEV_REL_DISCORD_APPLICATION_ID || secrets.DEV_REL_DISCORD_APPLICATION_ID }}
DEV_REL_DISCORD_API_TOKEN: ${{ vars.DEV_REL_DISCORD_API_TOKEN || secrets.DEV_REL_DISCORD_API_TOKEN }}
INVESTMENT_MANAGER_DISCORD_APPLICATION_ID: ${{ vars.INVESTMENT_MANAGER_DISCORD_APPLICATION_ID || secrets.INVESTMENT_MANAGER_DISCORD_APPLICATION_ID }}
INVESTMENT_MANAGER_DISCORD_API_TOKEN: ${{ vars.INVESTMENT_MANAGER_DISCORD_API_TOKEN || secrets.INVESTMENT_MANAGER_DISCORD_API_TOKEN }}
PGLITE_DATA_DIR: ${{ vars.PGLITE_DATA_DIR || secrets.PGLITE_DATA_DIR || '/root/.eliza/db' }}
TEE_MODE: ${{ vars.TEE_MODE || secrets.TEE_MODE || 'PRODUCTION' }}
WALLET_SECRET_SALT: ${{ vars.WALLET_SECRET_SALT || secrets.WALLET_SECRET_SALT }}
TEE_VENDOR: ${{ vars.TEE_VENDOR || secrets.TEE_VENDOR || 'phala' }}

jobs:
build-and-push:
permissions:
contents: read
packages: write
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ${{ env.DOCKER_REGISTRY }}
username: ${{ env.DOCKER_REGISTRY_USERNAME }}
password: ${{ env.DOCKER_REGISTRY_PASSWORD }}

- name: Build and Push Docker image
uses: docker/build-push-action@v5
with:
context: .
file: Dockerfile
push: true
tags: |
${{ env.DOCKER_USERNAME }}/${{ env.DOCKER_IMAGE }}:latest
${{ env.DOCKER_USERNAME }}/${{ env.DOCKER_IMAGE }}:${{ github.sha }}
- name: Set Docker Image Full Name
run: |
export DOCKER_IMAGE_FULL_NAME=${{ env.DOCKER_USERNAME }}/${{ env.DOCKER_IMAGE }}:${{ github.sha }}
- name: Install Phala Cloud CLI
run: sudo apt-get update && sudo apt-get install -y nodejs && sudo npm install -g bun
# Configure Phala Cloud API key
- name: Configure Phala Cloud
run: |
npx phala auth login ${{ env.PHALA_CLOUD_API_KEY }}
echo "Verifying Phala Cloud access..."
npx phala cvms ls
- name: Update Docker Compose
run: |
sed -i "s|\${DOCKER_IMAGE_FULL_NAME}|${{ env.DOCKER_USERNAME }}/${{ env.DOCKER_IMAGE }}:${{ github.sha }}|g" ./tee-docker-compose.yaml
- name: Make envfile
uses: SpicyPizza/create-envfile@v2.0
with:
envkey_DEBUG: false
envkey_OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
envkey_ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
envkey_SERVER_PORT: ${{ secrets.SERVER_PORT }}
envkey_POSTGRES_PASSWORD: ${{ secrets.POSTGRES_PASSWORD }}
envkey_POSTGRES_USER: ${{ secrets.POSTGRES_USER }}
envkey_POSTGRES_DB: ${{ secrets.POSTGRES_DB }}
envkey_EVM_CHAINS: ${{ secrets.EVM_CHAINS }}
envkey_BIRDEYE_API_KEY: ${{ secrets.BIRDEYE_API_KEY }}
envkey_COMMUNITY_MANAGER_DISCORD_APPLICATION_ID: ${{ secrets.COMMUNITY_MANAGER_DISCORD_APPLICATION_ID }}
envkey_COMMUNITY_MANAGER_DISCORD_API_TOKEN: ${{ secrets.COMMUNITY_MANAGER_DISCORD_API_TOKEN }}
envkey_SOCIAL_MEDIA_MANAGER_DISCORD_APPLICATION_ID: ${{ secrets.SOCIAL_MEDIA_MANAGER_DISCORD_APPLICATION_ID }}
envkey_SOCIAL_MEDIA_MANAGER_DISCORD_API_TOKEN: ${{ secrets.SOCIAL_MEDIA_MANAGER_DISCORD_API_TOKEN }}
envkey_LIAISON_DISCORD_APPLICATION_ID: ${{ secrets.LIAISON_DISCORD_APPLICATION_ID }}
envkey_LIAISON_DISCORD_API_TOKEN: ${{ secrets.LIAISON_DISCORD_API_TOKEN }}
envkey_PROJECT_MANAGER_DISCORD_APPLICATION_ID: ${{ secrets.PROJECT_MANAGER_DISCORD_APPLICATION_ID }}
envkey_PROJECT_MANAGER_DISCORD_API_TOKEN: ${{ secrets.PROJECT_MANAGER_DISCORD_API_TOKEN }}
envkey_DEV_REL_DISCORD_APPLICATION_ID: ${{ secrets.DEV_REL_DISCORD_APPLICATION_ID }}
envkey_DEV_REL_DISCORD_API_TOKEN: ${{ secrets.DEV_REL_DISCORD_API_TOKEN }}
envkey_INVESTMENT_MANAGER_DISCORD_APPLICATION_ID: ${{ secrets.INVESTMENT_MANAGER_DISCORD_APPLICATION_ID }}
envkey_INVESTMENT_MANAGER_DISCORD_API_TOKEN: ${{ secrets.INVESTMENT_MANAGER_DISCORD_API_TOKEN }}
envkey_PGLITE_DATA_DIR: ${{ secrets.PGLITE_DATA_DIR }}
envkey_TEE_MODE: ${{ secrets.TEE_MODE }}
envkey_WALLET_SECRET_SALT: ${{ secrets.WALLET_SECRET_SALT }}
envkey_TEE_VENDOR: ${{ secrets.TEE_VENDOR }}
file_name: .env
fail_on_empty: false
sort_keys: false

- name: Deploy to Phala Cloud
run: |
cat ./tee-docker-compose.yaml
npx phala cvms create \
-n ${{ env.APP_NAME }} \
-c tee-docker-compose.yaml \
-e .env \
--vcpu 4 \
--memory 8192 \
--disk-size 50 \
--teepod-id 3 \
--image dstack-0.3.5
31 changes: 31 additions & 0 deletions .github/workflows/test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: testdocker
on:
workflow_dispatch:

env:
REGISTRY: ghcr.io
IMAGE_NAME: ${{ github.repository }}
jobs:
build-and-push-image:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
attestations: write
id-token: write
steps:
- name: Login to Docker Hub
uses: meta-introspector/login-action@v3
with:
username: ${{ vars.DOCKER_HUB_USERNAME }}
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
- name: Build and push Docker image
id: push
uses: meta-introspector/build-push-action@v6.10.0
with:
platforms: linux/arm64,linux/arm64/v8
context: .
push: true
tags: |
${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
Loading