diff --git a/docs/builds.mdx b/docs/builds.mdx index 7aed6e0..fe072bb 100644 --- a/docs/builds.mdx +++ b/docs/builds.mdx @@ -68,3 +68,35 @@ Create them at the root of your project. - `shuttle_prebuild.sh`: Runs before `cargo build`. Can be used to install custom build dependencies. - `shuttle_postbuild.sh`: Runs after `cargo build`. - `shuttle_setup_container.sh`: Runs in the runtime image before build artifacts are copied into it. Can be used to install custom runtime dependencies. + +### Example: Install a custom Rust toolchain + +In this example, we install and switch to the `nighlty` toolchain. + +```sh shuttle_prebuild.sh +rustup install nightly --profile minimal +rustup default nightly +``` + +### Example: Install a build dependency + +```sh shuttle_prebuild.sh +apt update +apt install -y libopus-dev +``` + +### Example: Build a WASM frontend + +```sh shuttle_postbuild.sh +cd frontend +trunk build --release +``` + +Note: To use the built static assets at runtime, use [build.assets](/docs/files#build-assets). + +### Example: Install a runtime dependency + +```sh shuttle_setup_container.sh +apt update +apt install -y ffmpeg +``` diff --git a/docs/deployment-environment.mdx b/docs/deployment-environment.mdx index 66053f3..1795bde 100644 --- a/docs/deployment-environment.mdx +++ b/docs/deployment-environment.mdx @@ -6,12 +6,24 @@ icon: "box" ## Infrastructure +### Deployments + Deployments run in AWS ECS with Fargate VMs. The default compute configuration is 0.25 vCPU and 0.5 GB RAM. This will soon be made configurable. If you need more compute out of the gate, reach out to us. -{/* HTTPS traffic is proxied to your */} +**Rolling deployments**: +When a new deployment is made, it will be started alongside the previous one until it is considered healthy. +After that, the previous deployment will start shutting down. +This means that there is a window of time where there are two instances running in parallel. +If the new deployment fails to become healthy, it will be retried 3 times while the the previous one will stays up. + +### HTTPS traffic + +HTTPS traffic is proxied to your app on the project's default subdomain and any [custom domains]() that have been added. + +The proxy sets the `X-Forwarded-For` HTTP header on incoming requests to the remote IP address of the request. ## Environment variables diff --git a/docs/local-run.mdx b/docs/local-run.mdx index 359f8c1..f844e62 100644 --- a/docs/local-run.mdx +++ b/docs/local-run.mdx @@ -17,7 +17,7 @@ It then starts a local provisioner server that simulates resource provisioning o The environment variables available in the [deployment environment](/docs/deployment-environment) are also set during a local run. -### Local runs with databases +## Local runs with databases If your project uses a database resource, it will default to starting a local [Docker](https://docs.docker.com/get-docker/) container for that database. If you'd like to opt out of this behavior and supply your own database URI, simply pass it in as an argument to your resource. @@ -34,7 +34,7 @@ async fn main( **IMPORTANT:** If Docker isn't started, you may receive an "os error 2" error. This is typically related to your Docker installation. If you're using Docker via the CLI, you can use any Docker command to start it up. If you're using Docker Desktop, you will need to start Docker Desktop. -### Expose your application to your local network +## Expose your application to your local network If you'd like to expose your application to you local network, for example if you're serving a static website and you'd like to open it on your phone, simply pass in the `--external` flag: @@ -53,11 +53,11 @@ shuttle run --external --port 8123 You may need to open the port your app is started on in your firewall. -### Development Tips +## Development Tips Here are some small tips and tricks to boost your productivity when developing locally. -#### Live reload backend with `cargo watch` +### Live reload backend with `cargo watch` To live reload your Shuttle app when you save a file, you can use [cargo-watch](https://github.com/watchexec/cargo-watch): @@ -72,7 +72,7 @@ cargo watch -qcs 'shuttle run' Small caveat: Be aware that ignoring files with `.ignore` will also affect the behaviour of `shuttle deploy`. -#### Live reload frontend with `tower-livereload` +### Live reload frontend with `tower-livereload` Using `cargo watch` will only reload the "backend" Shuttle process. If you are developing a frontend in the browser that is hosted by your Shuttle app, @@ -106,7 +106,7 @@ if cfg!(debug_assertions) { } ``` -### Docker engines +## Docker engines `cargo-shuttle` uses the [bollard](https://crates.io/crates/bollard) crate to interact with the Docker engine on local runs. @@ -123,13 +123,13 @@ On Unix, bollard defaults to connecting to `unix:///var/run/docker.sock` unless If you end up using a `DOCKER_HOST` like below, you can add the `export DOCKER_HOST=...` line to your shell's config file to have it automatically set in new shell sessions. -#### Docker Desktop +### Docker Desktop ```bash export DOCKER_HOST="unix://$HOME/.docker/run/docker.sock" ``` -#### Podman +### Podman You will need to expose a rootless socket for Podman, and then set the `DOCKER_HOST` environment variable: @@ -138,7 +138,7 @@ podman system service --time=0 unix:///tmp/podman.sock export DOCKER_HOST=unix:///tmp/podman.sock ``` -#### Colima +### Colima ```bash export DOCKER_HOST="unix://$HOME/.colima/default/docker.sock" diff --git a/docs/logs.mdx b/docs/logs.mdx index b3f6137..9cea711 100644 --- a/docs/logs.mdx +++ b/docs/logs.mdx @@ -48,7 +48,7 @@ By default, Shuttle will set up a global tracing subscriber behind the scenes. If you'd rather set up your own tracing or logging, you can opt-out by disabling the default features on `shuttle-runtime`: ```toml Cargo.toml -shuttle-runtime = { version = "0.48.0", default-features = false } +shuttle-runtime = { version = "0.49.0", default-features = false } ``` With the default features enabled you can skip the step of initializing your subscriber when implementing [tracing](https://docs.rs/tracing/latest/tracing/) diff --git a/docs/projects.mdx b/docs/projects.mdx index ccf71cc..ae7ff45 100644 --- a/docs/projects.mdx +++ b/docs/projects.mdx @@ -12,7 +12,7 @@ Deployments to different Shuttle projects run in their own ECS service (Fargate ## Project Limits -In the free Community Tier, you are limited to a single project. +In the free Community Tier, you are limited to 3 projects. See [Pricing](https://www.shuttle.dev/pricing) for Pro tier benefits, such as more projects. @@ -33,6 +33,14 @@ You can view your project IDs and names with: shuttle project list ``` +You can rename a project with the following command. +Note: This also updates the default subdomain name. +Custom domains remain unchanged. + +```sh +shuttle project update name +``` + ## Project Linking For the Shuttle CLI to know which Shuttle Project ID to target, it stores the ID in a gitignored config file in your project. diff --git a/examples/actix-cookie-authentication.mdx b/examples/actix-cookie-authentication.mdx index 50bfefa..63d0b6d 100644 --- a/examples/actix-cookie-authentication.mdx +++ b/examples/actix-cookie-authentication.mdx @@ -32,8 +32,8 @@ edition = "2021" actix-identity = "0.6.0" actix-session = { version = "0.8.0", features = ["cookie-session"] } actix-web = "4.3.1" -shuttle-actix-web = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-actix-web = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` Your `main.rs` should look like this: diff --git a/examples/actix-postgres.mdx b/examples/actix-postgres.mdx index 02ce9be..fc27e09 100644 --- a/examples/actix-postgres.mdx +++ b/examples/actix-postgres.mdx @@ -116,10 +116,10 @@ edition = "2021" [dependencies] actix-web = "4.3.1" -shuttle-actix-web = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-actix-web = "0.49.0" +shuttle-runtime = "0.49.0" serde = "1.0.148" -shuttle-shared-db = { version = "0.48.0", features = ["postgres", "sqlx"] } +shuttle-shared-db = { version = "0.49.0", features = ["postgres", "sqlx"] } sqlx = "0.8.2" tokio = "1.26.0" ``` diff --git a/examples/actix-static-files.mdx b/examples/actix-static-files.mdx index 2b473d2..4e067ce 100644 --- a/examples/actix-static-files.mdx +++ b/examples/actix-static-files.mdx @@ -58,8 +58,8 @@ edition = "2021" [dependencies] actix-web = "4.3.1" actix-files = "0.6.2" -shuttle-actix-web = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-actix-web = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` diff --git a/examples/actix-websocket-actorless.mdx b/examples/actix-websocket-actorless.mdx index 6c44a62..052b01f 100644 --- a/examples/actix-websocket-actorless.mdx +++ b/examples/actix-websocket-actorless.mdx @@ -405,8 +405,8 @@ futures = "0.3" reqwest = "0.11" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" -shuttle-actix-web = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-actix-web = "0.49.0" +shuttle-runtime = "0.49.0" tokio = { version = "1", features = ["rt-multi-thread", "sync"] } tracing = "0.1" ``` diff --git a/examples/actix.mdx b/examples/actix.mdx index fce7bfc..f06d62c 100644 --- a/examples/actix.mdx +++ b/examples/actix.mdx @@ -45,8 +45,8 @@ edition = "2021" [dependencies] actix-web = "4.3.1" -shuttle-actix-web = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-actix-web = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` diff --git a/examples/axum-jwt-authentication.mdx b/examples/axum-jwt-authentication.mdx index 07a73fc..e3c93e2 100644 --- a/examples/axum-jwt-authentication.mdx +++ b/examples/axum-jwt-authentication.mdx @@ -220,8 +220,8 @@ jsonwebtoken = "8.3.0" once_cell = "1.18.0" serde = { version = "1.0.188", features = ["derive"] } serde_json = "1.0.107" -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.28.2" tracing-subscriber = "0.3.17" ``` diff --git a/examples/axum-postgres.mdx b/examples/axum-postgres.mdx index 31e9e64..aa96df0 100644 --- a/examples/axum-postgres.mdx +++ b/examples/axum-postgres.mdx @@ -101,9 +101,9 @@ edition = "2021" [dependencies] axum = "0.7.3" serde = { version = "1.0.188", features = ["derive"] } -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" -shuttle-shared-db = { version = "0.48.0", features = ["postgres", "sqlx"] } +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" +shuttle-shared-db = { version = "0.49.0", features = ["postgres", "sqlx"] } sqlx = "0.8.2" tokio = "1.28.2" ``` diff --git a/examples/axum-static-files.mdx b/examples/axum-static-files.mdx index 3389643..4fe613d 100644 --- a/examples/axum-static-files.mdx +++ b/examples/axum-static-files.mdx @@ -57,8 +57,8 @@ publish = false [dependencies] axum = "0.7.3" -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.28.2" tower-http = { version = "0.5.0", features = ["fs"] } ``` diff --git a/examples/axum-websockets.mdx b/examples/axum-websockets.mdx index 30b2dc8..fc142b7 100644 --- a/examples/axum-websockets.mdx +++ b/examples/axum-websockets.mdx @@ -266,8 +266,8 @@ futures = "0.3.28" reqwest = "0.11.23" serde = { version = "1.0.163", features = ["derive"] } serde_json = "1.0.96" -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.28.2" tower-http = { version = "0.5.0", features = ["fs"] } ``` diff --git a/examples/axum.mdx b/examples/axum.mdx index ba1b860..6422533 100644 --- a/examples/axum.mdx +++ b/examples/axum.mdx @@ -43,8 +43,8 @@ edition = "2021" [dependencies] axum = "0.7.4" -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.28.2" ``` diff --git a/examples/poise.mdx b/examples/poise.mdx index 0a96c95..9f394cd 100644 --- a/examples/poise.mdx +++ b/examples/poise.mdx @@ -72,9 +72,9 @@ publish = false [dependencies] anyhow = "1.0.68" poise = "0.6.1" -shuttle-runtime = "0.48.0" +shuttle-runtime = "0.49.0" # Since poise is a serenity command framework, it can run on Shuttle with shuttle-serenity -shuttle-serenity = "0.48.0" +shuttle-serenity = "0.49.0" tracing = "0.1.37" tokio = "1.26.0" ``` diff --git a/examples/rocket-jwt-authentication.mdx b/examples/rocket-jwt-authentication.mdx index 977a74e..0867e20 100644 --- a/examples/rocket-jwt-authentication.mdx +++ b/examples/rocket-jwt-authentication.mdx @@ -37,8 +37,8 @@ jsonwebtoken = { version = "8.1.1", default-features = false } lazy_static = "1.4.0" rocket = { version = "0.5.0", features = ["json"] } serde = { version = "1.0.148", features = ["derive"] } -shuttle-rocket = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-rocket = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` Your `main.rs` should look like this: diff --git a/examples/rocket-postgres.mdx b/examples/rocket-postgres.mdx index 40224ee..329b590 100644 --- a/examples/rocket-postgres.mdx +++ b/examples/rocket-postgres.mdx @@ -103,9 +103,9 @@ edition = "2021" [dependencies] rocket = { version = "0.5.0", features = ["json"] } serde = "1.0.148" -shuttle-rocket = "0.48.0" -shuttle-runtime = "0.48.0" -shuttle-shared-db = { version = "0.48.0", features = ["postgres", "sqlx"] } +shuttle-rocket = "0.49.0" +shuttle-runtime = "0.49.0" +shuttle-shared-db = { version = "0.49.0", features = ["postgres", "sqlx"] } sqlx = "0.8.2" tokio = "1.26.0" ``` diff --git a/examples/rocket-static-files.mdx b/examples/rocket-static-files.mdx index 5b727d8..08b8688 100644 --- a/examples/rocket-static-files.mdx +++ b/examples/rocket-static-files.mdx @@ -75,8 +75,8 @@ publish = false [dependencies] rocket = "0.5.0" -shuttle-rocket = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-rocket = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` diff --git a/examples/rocket.mdx b/examples/rocket.mdx index 7e33d17..471b1ee 100644 --- a/examples/rocket.mdx +++ b/examples/rocket.mdx @@ -43,8 +43,8 @@ edition = "2021" [dependencies] rocket = "0.5.0" -shuttle-rocket = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-rocket = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` diff --git a/examples/serenity-todo.mdx b/examples/serenity-todo.mdx index ffca52f..7383663 100644 --- a/examples/serenity-todo.mdx +++ b/examples/serenity-todo.mdx @@ -269,9 +269,9 @@ edition = "2021" anyhow = "1.0.66" serde = "1.0.148" serenity = { version = "0.12.0", default-features = false, features = ["client", "gateway", "rustls_backend", "model"] } -shuttle-runtime = "0.48.0" -shuttle-serenity = "0.48.0" -shuttle-shared-db = { version = "0.48.0", features = ["postgres", "sqlx"] } +shuttle-runtime = "0.49.0" +shuttle-serenity = "0.49.0" +shuttle-shared-db = { version = "0.49.0", features = ["postgres", "sqlx"] } sqlx = "0.8.2" tokio = "1.26.0" tracing = "0.1.37" diff --git a/examples/serenity.mdx b/examples/serenity.mdx index 5c0f37d..d30e319 100644 --- a/examples/serenity.mdx +++ b/examples/serenity.mdx @@ -87,8 +87,8 @@ edition = "2021" [dependencies] anyhow = "1.0.66" serenity = { version = "0.12.0", default-features = false, features = ["client", "gateway", "rustls_backend", "model"] } -shuttle-runtime = "0.48.0" -shuttle-serenity = "0.48.0" +shuttle-runtime = "0.49.0" +shuttle-serenity = "0.49.0" tokio = "1.26.0" tracing = "0.1.37" ``` diff --git a/getting-started/quick-start.mdx b/getting-started/quick-start.mdx index 719d649..e1f8a5e 100644 --- a/getting-started/quick-start.mdx +++ b/getting-started/quick-start.mdx @@ -11,7 +11,7 @@ If you haven't, go to the [installation](./installation) guide. ## Login -The login command opens the [Shuttle Console](https://console.shuttle.dev/) where you can copy your API key: +The login command opens the [Shuttle Console](https://console.shuttle.dev/) to authenticate your CLI: ```sh shuttle login @@ -19,7 +19,7 @@ shuttle login ## Create your first project -The init command lets you generate a Hello World project or one of our [examples](/examples) or [templates](/templates). +The init command lets you generate a Hello World project or clone one of our [examples](/examples) or [templates](/templates). For your first project, try a Hello World template. ```sh diff --git a/guides/cli.mdx b/guides/cli.mdx index d544dc7..22893d2 100644 --- a/guides/cli.mdx +++ b/guides/cli.mdx @@ -46,8 +46,8 @@ Use the global `--debug` flag to print detailed debug output. ### Get started - `cargo install cargo-shuttle`: For more alternatives, see [Installation](/getting-started/installation). -- `shuttle login`: Open the Shuttle Console and paste the API key to log in. -- `shuttle init`: Log in and initialize a project. +- `shuttle login`: Log in via the Shuttle Console. +- `shuttle init`: Generate a project from a template. - `shuttle account`: Check account details. ### Local run @@ -80,6 +80,7 @@ All project-related commands can use: - `shuttle project status`: Check the state of this project. - `shuttle project link`: Link this project folder to a project on Shuttle. - `shuttle project delete`: Delete a project. +- `shuttle project update name `: Rename a project. ### Manage deployments and logs diff --git a/guides/upgrade.mdx b/guides/upgrade.mdx index 8aa0977..257a4dd 100644 --- a/guides/upgrade.mdx +++ b/guides/upgrade.mdx @@ -15,7 +15,7 @@ icon: "code-merge" 3. Update your project's Shuttle dependencies in `Cargo.toml`: ```toml Cargo.toml - shuttle-runtime = "0.48.0" + shuttle-runtime = "0.49.0" # do the same for other shuttle dependencies ``` diff --git a/integrations/custom-resources.mdx b/integrations/custom-resources.mdx index 91f675c..a172861 100644 --- a/integrations/custom-resources.mdx +++ b/integrations/custom-resources.mdx @@ -90,9 +90,9 @@ edition = "2021" async-trait = "0.1.56" axum = "0.7.3" serde = { version = "1.0.148", default-features = false, features = ["derive"] } -shuttle-service = "0.48.0" -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-service = "0.49.0" +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.28.2" ``` diff --git a/migrations/introduction.mdx b/migrations/introduction.mdx index 2183d21..e963985 100644 --- a/migrations/introduction.mdx +++ b/migrations/introduction.mdx @@ -6,7 +6,7 @@ description: "Four simple steps to migrate to Shuttle" ## Introduction If you are migrating from another platform to Shuttle (or simply want to add the Shuttle runtime to your project), here are four simple steps you can take to fully migrate your project over to Shuttle. -Note that this page assumes you've already installed the `cargo-shuttle` CLI - if you haven't yet, you can learn how to do so [here.](/getting-started/installation) +Note that this page assumes you've already installed the Shuttle CLI - if you haven't yet, you can learn how to do so [here.](/getting-started/installation) ## How to Migrate ### 1. Check your service can be migrated diff --git a/platform-update/migration.mdx b/platform-update/migration.mdx index c337fa7..bf3df35 100644 --- a/platform-update/migration.mdx +++ b/platform-update/migration.mdx @@ -1,10 +1,9 @@ --- title: Transfer to the new platform description: How to transfer projects from shuttle.rs to shuttle.dev - --- -This guide is for transferring old projects from **shuttle.rs** to the new **shuttle.dev** platform. +This guide is for transferring projects from **shuttle.rs** to the new **shuttle.dev** platform. If you are a new Shuttle user, you can ignore this document and start from [Installation](/getting-started/installation). ## 1. Check platform features & policies @@ -59,10 +58,10 @@ This is the list of required changes. Update to the latest version of Shuttle dependencies: ```toml Cargo.toml -shuttle-runtime = "0.48.0" +shuttle-runtime = "0.49.0" # do the same for all other shuttle crates # for example, if you use `shuttle-axum`: -shuttle-axum = "0.48.0" +shuttle-axum = "0.49.0" ``` ### Shuttle.toml @@ -73,7 +72,9 @@ The `assets` field has been renamed to `deploy.include` ([docs](/docs/files#incl If you want the deploy command to keep blocking dirty deployments, add the `deploy.deny_dirty` field ([docs](/docs/files#block-dirty-deployments)). + If your project uses static assets at runtime, you need to declare them in `build.assets` to have them copied from the builder to the runtime image ([docs](/docs/files#build-assets)). + ### Secrets.toml diff --git a/platform-update/platform-update.mdx b/platform-update/platform-update.mdx index f8cdad4..4e3b275 100644 --- a/platform-update/platform-update.mdx +++ b/platform-update/platform-update.mdx @@ -1,5 +1,5 @@ --- -title: Platform Update +title: Overview & Changelog description: In Q4 2024, Shuttle is launching a new and improved platform --- @@ -44,7 +44,7 @@ Introducing the new Shuttle platform! We've supercharged what developers love ab - `status`: use `deployment status` instead. - `stop`: use `deployment stop` instead. - `project status`: projects no longer have a state, so `--follow` has no effect. - - `project link`: explicitly re-link the project directory to a Shuttle project. (more below) + - `login`: automatically gets the API key from the API after an approval in Shuttle Console. No more copy + pasting! - Max archive size for deployments is now 100 MB (up from 50MB). - Secrets.toml must now be in the root of the cargo workspace (`--secrets ` can still be used for a custom location). - Shuttle.toml: @@ -61,9 +61,11 @@ Introducing the new Shuttle platform! We've supercharged what developers love ab - CLI commands: - Commands that target a project: You will now be prompted to link your project directory to a Shuttle project. - In addition to `--name `, you can also use `--id ` to target specific projects. This overrides project linking. - - A new `certificate` command for adding SSL certificates to custom domains. + - `project link`: explicitly re-link the project directory to a Shuttle project. + - `certificate` command for adding and managing SSL certificates for custom domains. - `deploy --no-follow` to not poll the deployment status until it reaches a running or failed state. - `account` to show information about your account. + - `project update name` to rename a project. ### Removed diff --git a/templates/tutorials/custom-service.mdx b/templates/tutorials/custom-service.mdx index 73d6c6d..b70d65b 100644 --- a/templates/tutorials/custom-service.mdx +++ b/templates/tutorials/custom-service.mdx @@ -48,7 +48,7 @@ axum = "0.6.4" hyper = "0.14.24" poise = "0.5.2" serde = "1.0" -shuttle-runtime = "0.48.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` diff --git a/templates/tutorials/serverless-calendar-app.mdx b/templates/tutorials/serverless-calendar-app.mdx index 4f53a15..4c204ab 100644 --- a/templates/tutorials/serverless-calendar-app.mdx +++ b/templates/tutorials/serverless-calendar-app.mdx @@ -124,24 +124,13 @@ git add .gitignore Cargo.toml src/ git commit -m "Hello World" ``` -To deploy the code, I needed to sign up for a shuttle account. This can be done -over at https://console.shuttle.dev/. - -It will ask you to authorize it to access your Github account. - Then: -```bash -shuttle login -``` - -and finally: - ```bash shuttle deploy ``` -Now let's head over to https://zerocal.shuttle.app: +Now let's head over to the returned project URL: Hello World! Deploying the first version took less than 5 minutes. Nice! We're all set for our custom calendar app. diff --git a/templates/tutorials/url-shortener.mdx b/templates/tutorials/url-shortener.mdx index db65b78..0b741f6 100644 --- a/templates/tutorials/url-shortener.mdx +++ b/templates/tutorials/url-shortener.mdx @@ -129,8 +129,8 @@ edition = "2021" [dependencies] rocket = "0.5.0" -shuttle-rocket = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-rocket = "0.49.0" +shuttle-runtime = "0.49.0" tokio = "1.26.0" ``` @@ -152,8 +152,8 @@ $ shuttle deploy Compiling rocket_http v0.5.0 Compiling rocket_codegen v0.5.0 Compiling rocket v0.5.0 - Compiling shuttle-rocket v0.48.0 - Compiling shuttle-runtime v0.48.0 + Compiling shuttle-rocket v0.49.0 + Compiling shuttle-runtime v0.49.0 Compiling url-shortener v0.1.0 (/opt/shuttle/crates/url-shortener) Finished dev [unoptimized + debuginfo] target(s) in 1m 01s diff --git a/templates/tutorials/websocket-chat-app-js.mdx b/templates/tutorials/websocket-chat-app-js.mdx index e271134..a8039c1 100644 --- a/templates/tutorials/websocket-chat-app-js.mdx +++ b/templates/tutorials/websocket-chat-app-js.mdx @@ -257,8 +257,8 @@ hyper = { version = "0.14", features = ["client", "http2"] } hyper-tls = "0.5" serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" -shuttle-axum = "0.48.0" -shuttle-runtime = "0.48.0" +shuttle-axum = "0.49.0" +shuttle-runtime = "0.49.0" sync_wrapper = "0.1" tokio = { version = "1", features = ["full"] } tower-http = { version = "0.3.5", features = ["fs", "auth"]}