Flecity New Chapter 技術仕様
このページではFlecity New Chapterの技術的な要項をまとめています
Last updated
このページではFlecity New Chapterの技術的な要項をまとめています
Last updated
Flecityでは本番環境(本鯖)とテスト環境(テスト鯖)の2つがあります。
Flecityではバージョン管理にAzure DevOps上でホストされたGitリポジトリを使用しています。ここにコードをプッシュすると、自動的にサーバーと同期されます。 このリポジトリにはブランチが2つあり、テスト用と本番用に分かれています。まずテスト用を使い、動作確認ができたら本番用に切り替えてプッシュします。
以前はFlaskで運用していましたが、SSL関連でエラーがでるのでFastAPIに移管します。 Azure DevOpsのWebhookのリクエストを受け取り、そのリスクエストを受け取ったら `git pull` を自動的に行って同期を行います。 また、このAPIはデータベース操作用のAPIとしての機能も併せ持っています。管理者ではない人でも、特定の条件下でデータベースの操作を許可するべき場合は、このAPIを経由して行います。
データベースは本番環境のサーバーでホストされたローカルのMariaDB 11.4を使用しています。このデータベースは外部からの操作ができません。権限のある方のみ操作ができます。
データベースから自動的にバックアップを作り、テストサーバーに転送するPythonスクリプトです。
本番環境から受け取ったsqlファイルを自動的にバックアップサーバーに適用します。