Hello Fastly
Setup CLI
# Install Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
# Install Fastly
brew install fastly/tap/fastly
Init
mkdir hello-wasm-fastly
cd hello-wasm-fastly
fastly compute init
Serve locally
fastly compute serve
open http://127.0.0.1:7676/
Prepare FASTLY_API_TOKEN
Get
REPLACE_ME_WITH_YOUR_FASTLY_API_TOKEN
from https://manage.fastly.com/account/personal/tokens with write permission.
Name: hello-wasm-fastly
Role: Engineer
Scope: Global API access (global), Read-only access (global:read)
Deploy
fastly compute deploy --token REPLACE_ME_WITH_YOUR_FASTLY_API_TOKEN
Output
fastly compute deploy --token REPLACE_ME_WITH_YOUR_FASTLY_API_TOKEN
There is no Fastly service associated with this package. To connect to an existing service
add the Service ID to the fastly.toml file, otherwise follow the prompts to create a
service now.
Press ^C at any time to quit.
Create new service: [y/N] y
Service name: [hello-wasm-fastly]
✓ Creating service
Domain: [wrongly-fancy-skink.edgecompute.app]
Backend (hostname or IP address, or leave blank to stop adding backends):
✓ Creating domain 'wrongly-fancy-skink.edgecompute.app'
✓ Uploading package
✓ Activating service (version 1)
✓ Checking service availability (status: 200)
Manage this service at:
https://manage.fastly.com/configure/services/xQHbmi6S43MSFk9L5p9IW7
View this service at:
https://wrongly-fancy-skink.edgecompute.app
SUCCESS: Deployed package (service xQHbmi6S43MSFk9L5p9IW7, version 1)
Caveats
- crate must support
wasm-wasi
: see https://developer.fastly.com/learning/compute/rust/#using-dependencies