1个不稳定版本

0.1.0 2024年7月23日

#3#laravel

Download history 99/week @ 2024-07-21 9/week @ 2024-07-28

108 每月下载量
3 crates 中使用

MIT 许可协议

6KB
62 代码行

🛰️ 将您的Laravel站点放入轨道。

Orbit提供了一种简单的方法,在几秒钟内将您的Laravel站点部署到服务器。

开始使用

  1. 在您的VPS上设置并运行Orbit服务器。您需要一个 GitHub令牌 和服务器二进制文件(还有一个 Docker镜像)!

    Orbit服务器公开了一个HTTP API,您需要将其公开给外界。

  2. 创建一个 Orbit.toml 配置文件,并将您的站点添加到其中,如下所示
version = 1
token = ""  # Use `openssl rand -base64 32` to generate a random token

[[sites]]
name = "Test Site"
path = "/var/www/test-site"
github_repo = "m1guelpf/laravel-test"
commands = [ # Extra commands to run during the deployment (optional)
    "php horizon:terminate"
]
  1. 创建一个 .github/workflows/deploy.yaml GitHub操作,如下所示
name: Deploy to prod
on:
    push:
        branches: [main]

jobs:
    deploy:
        runs-on: ubuntu-latest
        steps:
            - name: Deploy to prod
              uses: m1guelpf/orbit@main
              with:
                  site: alexandria # slug of your site, generated from the name above
                  orbit-url: ${{ secrets.ORBIT_URL }} # URL to your Orbit instance
                  orbit-token: ${{ secrets.ORBIT_TOKEN }} # The token you generated on your Orbit config
  1. 就是这样!将代码推送到 main 将现在部署您的网站,而不会对用户造成停机 🎉

架构

🌐 Orbit服务器

Orbit服务器是系统的主组件。它公开了一个HTTP API,允许您触发部署并实时流回结果。这是包含部署网站逻辑的模块。

🌠 Orbit客户端

为了使与服务器交互更容易,Orbit客户端提供了一个简单的Rust接口来调用API,处理序列化等。如果您想编写自己的Orbit集成,它将允许您像另一个crate一样与服务器交互。

🐙 Orbit CLI & GitHub操作

为了使最终用户的部署更容易,Orbit还包括一个CLI,它提供了用户友好的实时输出以进行部署。如果您想从GitHub Actions运行它,它还包含在其自己的GitHub Action中,使零停机部署只需一行更改。

许可协议

本项目采用MIT许可协议 - 有关详细信息,请参阅LICENSE文件

依赖项

~0.4–1MB
~23K SLoC