Compare commits

...

14 Commits

Author SHA1 Message Date
Ron
f8fd9f76fa Merge pull request #429 from fleetbase/dev-v0.7.10
Some checks failed
Fleetbase CI / Build and Start Docker Services (push) Has been cancelled
v0.7.10 - Maintenance capability overhaul, Storefront critical patches and improvements
2025-09-02 15:33:10 +08:00
Ronald A. Richardson
67aa793537 v0.7.10 - Maintenance capability overhaul, Storefront critical patches and improvements 2025-09-02 14:32:39 +08:00
Ron
5d0ae16cfd Merge pull request #424 from fleetbase/dev-v0.7.9
Some checks failed
Fleetbase CI / Build and Start Docker Services (push) Has been cancelled
v0.7.9 ~ shorter default data retention + template variable resolver + patched order vehicle update via api
2025-08-13 17:47:01 +08:00
Ronald A. Richardson
1d003ee31e v0.7.9 ~ shorter default data retention + template variable resolver + patched order vehicle update via api 2025-08-13 17:32:46 +08:00
Ron
9c9f3a994e Added one-click aws deploy details
Some checks are pending
Fleetbase CI / Build and Start Docker Services (push) Waiting to run
2025-08-13 14:21:18 +08:00
Ron
b0ae302e81 Merge pull request #423 from fleetbase/dev-v0.7.8
Some checks are pending
Fleetbase CI / Build and Start Docker Services (push) Waiting to run
v0.7.8 - Fix OSX build script, removed awsmp ECR publish
2025-08-12 19:01:15 +08:00
Ronald A. Richardson
205fcf1480 Optimized maintenance script, added linux/arm64 to docker image platforms 2025-08-12 18:53:23 +08:00
Ronald A. Richardson
23bf7c5ac8 v0.7.8 - Fix OSX build script, removed awsmp ECR publish 2025-08-11 13:37:00 +08:00
Ron
ada7e0df92 Merge pull request #422 from fleetbase/dev-v0.7.7
Some checks failed
Fleetbase CI / Build and Start Docker Services (push) Has been cancelled
v0.7.7 - Configurable rate limiting and maintenance patches
2025-08-09 19:14:21 +08:00
Ronald A. Richardson
f3bc42ace5 upgraded dependencies 2025-08-09 18:56:38 +08:00
Ronald A. Richardson
b91cbed080 v0.7.7 - Configurable rate limiting and maintenance patches 2025-08-09 16:40:59 +08:00
Ron
9870b11a71 Merge pull request #418 from fleetbase/feature/aws-marketplace-ecr-publish-job
Some checks failed
Fleetbase CI / Build and Start Docker Services (push) Has been cancelled
fix ecr authentication step
2025-07-25 16:13:39 +08:00
Ron
db3bf46a02 Merge pull request #417 from fleetbase/feature/aws-marketplace-ecr-publish-job
fix ecr publish add registry env variable
2025-07-25 15:25:47 +08:00
Ron
030ec2494d Merge pull request #416 from fleetbase/feature/aws-marketplace-ecr-publish-job
added workflow job to publish to aws ecr for marketplace distribution
2025-07-25 15:07:13 +08:00
24 changed files with 3220 additions and 3170 deletions

View File

@@ -58,6 +58,43 @@ jobs:
files: |
./docker-bake.hcl
- name: Resolve ECS Targets
run: |
set -euo pipefail
# Detect naming scheme by checking if new cluster exists
NEW_CLUSTER="${PROJECT}-${STACK}-cluster"
if aws ecs describe-clusters --region "${AWS_REGION}" --clusters "${NEW_CLUSTER}" \
--query "clusters[?status=='ACTIVE'].clusterArn" --output text 2>/dev/null | grep -q .; then
# New scheme: use cluster suffix and service prefixes
CLUSTER="${NEW_CLUSTER}"
SERVICE_PREFIX="${PROJECT}-${STACK}-"
SERVICE_BASE="api"
else
# Legacy scheme: no suffixes/prefixes
CLUSTER="${PROJECT}-${STACK}"
SERVICE_PREFIX=""
SERVICE_BASE="app"
fi
# Build service names
API_SERVICE="${SERVICE_PREFIX}${SERVICE_BASE}"
SCHEDULER_SERVICE="${SERVICE_PREFIX}scheduler"
EVENTS_SERVICE="${SERVICE_PREFIX}events"
TASK_DEF="${PROJECT}-${STACK}-${SERVICE_BASE}"
# Get container name from task definition
CONTAINER_NAME="$(aws ecs describe-task-definition --task-definition "$TASK_DEF" \
--query 'taskDefinition.containerDefinitions[0].name' --output text 2>/dev/null || echo "$SERVICE_BASE")"
{
echo "CLUSTER=$CLUSTER"
echo "API_SERVICE=$API_SERVICE"
echo "SCHEDULER_SERVICE=$SCHEDULER_SERVICE"
echo "EVENTS_SERVICE=$EVENTS_SERVICE"
echo "TASK_DEF=$TASK_DEF"
echo "CONTAINER_NAME=$CONTAINER_NAME"
} >> "$GITHUB_ENV"
- name: Download ecs-tool
run: |
wget -O ecs-tool.tar.gz https://github.com/springload/ecs-tool/releases/download/1.9.6/ecs-tool_1.9.6_linux_amd64.tar.gz && tar -xvf ecs-tool.tar.gz ecs-tool
@@ -65,9 +102,21 @@ jobs:
- name: Deploy the images 🚀
run: |-
set -eu
# run deploy.sh script before deployments
env "ECS_RUN.SERVICE=app" "ECS_RUN.LAUNCH_TYPE=FARGATE" ./ecs-tool run -l "ecs-tool" --image_tag '{container_name}-${{ env.VERSION }}' --cluster ${{ env.PROJECT }}-${{ env.STACK }} --task_definition ${{ env.PROJECT }}-${{ env.STACK }}-app --container_name app ./deploy.sh
./ecs-tool deploy --image_tag '{container_name}-${{ env.VERSION }}' --cluster ${{ env.PROJECT }}-${{ env.STACK }} -s app -s scheduler -s events
# Run deploy.sh script before deployments
env "ECS_RUN.SERVICE=${API_SERVICE}" "ECS_RUN.LAUNCH_TYPE=FARGATE" \
./ecs-tool run -l "ecs-tool" \
--image_tag '{container_name}-${{ env.VERSION }}' \
--cluster "${CLUSTER}" \
--task_definition "${TASK_DEF}" \
--container_name "${CONTAINER_NAME}" \
./deploy.sh
# Deploy services
./ecs-tool deploy \
--image_tag '{container_name}-${{ env.VERSION }}' \
--cluster "${CLUSTER}" \
-s "${API_SERVICE}" -s "${SCHEDULER_SERVICE}" -s "${EVENTS_SERVICE}"
build_frontend:
name: Build and Deploy the Console
@@ -175,6 +224,11 @@ jobs:
set -u
DEPLOY_BUCKET=${STATIC_DEPLOY_BUCKET:-${{ env.PROJECT }}-${{ env.STACK }}}
NEW_BUCKET="${PROJECT}-${STACK}-console"
if aws s3api head-bucket --bucket "$NEW_BUCKET" 2>/dev/null; then
DEPLOY_BUCKET="$NEW_BUCKET"
fi
# this value will come from the dotenv above
echo "Deploying to $DEPLOY_BUCKET"
wget -O- https://github.com/bep/s3deploy/releases/download/v2.11.0/s3deploy_2.11.0_linux-amd64.tar.gz | tar xzv -f - s3deploy

View File

@@ -48,56 +48,3 @@ jobs:
fleetbase-api
files: |
./docker-bake.hcl
aws-marketplace-ecr-release:
name: Build and Push to AWS ECR
runs-on: ubuntu-latest
needs: docker-release
env:
REGISTRY: ${{ secrets.AWS_ECR_REGISTRY }}/fleetbase
VERSION: ${{ github.event.inputs.version || (github.ref_type == 'tag' && startsWith(github.ref_name, 'v') && github.ref_name) || 'manual' }}
steps:
- name: Checkout Repo
uses: actions/checkout@v3
with:
ref: ${{ github.event.inputs.branch || github.ref_name }}
submodules: recursive
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v3
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}
- name: Manually log in to Amazon ECR (Marketplace-style)
run: |
aws ecr get-login-password --region ${{ secrets.AWS_ECR_REGION }} | \
docker login --username AWS --password-stdin ${{ secrets.AWS_ECR_REGISTRY }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Bake and Push to ECR
uses: docker/bake-action@v2
with:
push: true
files: |
./docker-bake.hcl
targets: |
fleetbase-api
fleetbase-console
- name: Verify ECR Images
run: |
aws ecr describe-images \
--registry-id ${{ secrets.AWS_ECR_REGISTRY_ID }} \
--repository-name fleetbase/fleetbase-api \
--region ${{ secrets.AWS_ECR_REGION }}
aws ecr describe-images \
--registry-id ${{ secrets.AWS_ECR_REGISTRY_ID }} \
--repository-name fleetbase/fleetbase-console \
--region ${{ secrets.AWS_ECR_REGION }}

11
.gitignore vendored
View File

@@ -3,6 +3,7 @@
.env.backup
.phpunit.result.cache
.pnpm-store
.tool-versions
docker-compose.override.yml
npm-debug.log
yarn-error.log
@@ -16,6 +17,8 @@ api/composer.dev.json
api/composer-install-dev.sh
api/auth.json
api/crontab
api/go-crond
api/.fleetbase-id
act.sh
composer-auth.json
docker/database/*
@@ -31,8 +34,14 @@ packages/loconav
packages/internals
packages/projectargus-engine
packages/customer-portal
# wip
packages/solid
packages/aws-marketplace
packages/countries
packages/fliit
packages/samsara
packages/solid*
packages/valhalla
packages/vroom
solid
verdaccio
# asdf

View File

@@ -7,11 +7,11 @@
<p align="center" dir="auto">
Modular logistics and supply chain operating system
<br>
<a href="https://docs.fleetbase.io/" rel="nofollow">Documentation</a>
<a href="https://docs.fleetbase.io/" rel="nofollow" target="_fleetbase_docs">Documentation</a>
·
<a href="https://console.fleetbase.io" rel="nofollow">Cloud Version</a>
<a href="https://console.fleetbase.io" rel="nofollow" target="_fleetbase_console">Cloud Version</a>
·
<a href="https://fleetbase.apichecker.com" target="_api_status" rel="nofollow">API Status</a>
<a href="https://console.fleetbase.io/aws-marketplace" rel="nofollow" target="_aws_marketplace">Deploy on AWS</a>
·
<a href="https://tally.so/r/3NBpAW" rel="nofollow">Book a Demo</a>
·
@@ -39,6 +39,7 @@ cd fleetbase && ./scripts/docker-install.sh
- [Features](#-features)
- [Install](#-install)
- [Deploy on AWS](#-deploy-on-aws-in-one-click)
- [Extensions](#-extensions)
- [Apps](#-apps)
- [Roadmap](#-roadmap)
@@ -117,6 +118,36 @@ services:
You can learn more about full installation, and configuration in the [official documentation](https://docs.fleetbase.io/getting-started/install).
## 🚀 Deploy on AWS in One Click
Deploy your complete Fleetbase logistics platform on AWS with enterprise-grade security, scalability, and reliability. No DevOps expertise required!
[![Deploy to AWS](https://img.shields.io/badge/Deploy%20to%20AWS-FF9900?style=for-the-badge&logo=amazon-aws&logoColor=white)](https://console.fleetbase.io/aws-marketplace)
### ✨ What You Get
- **Complete AWS Infrastructure**: ECS Fargate, RDS MySQL, ElastiCache Redis, S3, CloudFront, and more
- **25-Minute Setup**: From zero to production-ready logistics platform
- **Enterprise Security**: VPC isolation, encrypted storage, secrets management
- **Auto-Scaling**: Handle traffic spikes with ECS Fargate auto-scaling
- **High Availability**: Multi-AZ deployment with 99.9% uptime SLA
- **Cost Optimized**: Pay-as-you-use with optimized resource allocation
### 🏗️ Infrastructure Included
Your AWS deployment includes a complete, production-ready infrastructure stack:
- **Compute**: ECS Fargate cluster with auto-scaling services
- **Database**: RDS MySQL 8.0 with automated backups and Multi-AZ support
- **Cache**: ElastiCache Redis for high-performance caching
- **Storage**: S3 object storage with CloudFront CDN for global distribution
- **Networking**: VPC with private subnets, NAT gateways, and security groups
- **Load Balancing**: Application Load Balancer with SSL certificates
- **Monitoring**: CloudWatch logs, container insights, and health monitoring
- **Messaging**: SQS message queues for background job processing
[**🚀 Deploy Now**](https://console.fleetbase.io/aws-marketplace) | [**📖 Learn More**](https://docs.fleetbase.io/category/deploying/aws)
# 🧩 Extensions
Extensions are modular components that enhance the functionality of your Fleetbase instance. They allow you to add new features, customize existing behavior, or integrate with external systems.
@@ -186,3 +217,4 @@ Get updates on Fleetbase's development and chat with the project maintainers and
# License & Copyright
Fleetbase is made available under the terms of the <a href="https://www.gnu.org/licenses/agpl-3.0.html" target="_blank">GNU Affero General Public License 3.0 (AGPL 3.0)</a>. For other licenses <a href="mailto:hello@fleetbase.io" target="_blank">contact us</a>.

View File

@@ -1,18 +1,24 @@
# 🚀 Fleetbase v0.7.6 — 2025-06-04
# 🚀 Fleetbase v0.7.10 — 2025-09-02
> Minor patches and route optimization overhaul progress
> Preparing for a major update
---
## ✨ Highlights
- Preparing to implement full multi-order/payload route optimization and managed routes.
- Patched scheduler to not run in CI environments or without database connection established.
- 2 New route optimization extensions published! VROOM & Valhalla
- Added new core Report and Alert models to enable report generation and alerts
- Added new FleetOps models to enhance maintenance and telematics: Maintenance, WorkOrder, Asset, Equipment, Part, Sensor, Telematic
- Added new `HasCustomFields` trait to enable custom fields on resources
- Added ability to filter storefront metrics with date range input
- Patched customers widget in storefront
- Patched payment gateway management in storefront
- Added ability to set default order config to stores and networks
- Critical patches for stripe integration in Storefront
- Other quality patches in storefront
---
## ⚠️ Breaking Changes
- None 🙂
- ⚠️ `VehicleDevice` and `VehicleDeviceEvent` has been deprecated and changed to `Device` and `DeviceEvent`
---
@@ -22,6 +28,7 @@
git pull origin main --no-rebase
# Update docker
docker compose pull
docker compose down && docker compose up -d
# Run deploy script

View File

@@ -40,7 +40,6 @@ class Kernel extends HttpKernel
],
'api' => [
// \Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful::class,
'throttle:api',
\Illuminate\Routing\Middleware\SubstituteBindings::class,
],

View File

@@ -2,10 +2,8 @@
namespace App\Providers;
use Illuminate\Cache\RateLimiting\Limit;
use Illuminate\Foundation\Support\Providers\RouteServiceProvider as ServiceProvider;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\RateLimiter;
use Illuminate\Support\Facades\Route;
class RouteServiceProvider extends ServiceProvider
@@ -17,17 +15,15 @@ class RouteServiceProvider extends ServiceProvider
*/
public function boot()
{
$this->configureRateLimiting();
$this->routes(
function () {
Route::get(
'/status',
function () {
'/health',
function (Request $request) {
return response()->json(
[
'status' => 'ok',
'time' => microtime(true) - LARAVEL_START
'time' => microtime(true) - $request->attributes->get('request_start_time')
]
);
}
@@ -35,19 +31,4 @@ class RouteServiceProvider extends ServiceProvider
}
);
}
/**
* Configure the rate limiters for the application.
*
* @return void
*/
protected function configureRateLimiting()
{
RateLimiter::for(
'api',
function (Request $request) {
return Limit::perMinute(60)->by(optional($request->user())->id ?: $request->ip());
}
);
}
}

View File

@@ -7,13 +7,23 @@
"laravel"
],
"license": "AGPL-3.0-or-later",
"authors": [
{
"name": "Fleetbase Pte Ltd.",
"email": "hello@fleetbase.io"
},
{
"name": "Ronald A. Richardson",
"email": "ron@fleetbase.io"
}
],
"require": {
"php": "^8.0",
"appstract/laravel-opcache": "^4.0",
"fleetbase/core-api": "^1.6.12",
"fleetbase/fleetops-api": "^0.6.15",
"fleetbase/core-api": "^1.6.16",
"fleetbase/fleetops-api": "^0.6.18",
"fleetbase/registry-bridge": "^0.0.19",
"fleetbase/storefront-api": "^0.4.0",
"fleetbase/storefront-api": "^0.4.1",
"guzzlehttp/guzzle": "^7.0.1",
"laravel/framework": "^10.0",
"laravel/octane": "^2.3",
@@ -21,6 +31,7 @@
"league/flysystem-aws-s3-v3": "^3.0",
"maatwebsite/excel": "^3.1",
"phpoffice/phpspreadsheet": "^1.28",
"maennchen/zipstream-php": "3.1.2",
"predis/predis": "^2.1",
"psr/http-factory-implementation": "*",
"resend/resend-php": "^0.14.0",
@@ -31,7 +42,6 @@
"require-dev": {
"spatie/laravel-ignition": "^2.0",
"fakerphp/faker": "^1.9.1",
"kitloong/laravel-migrations-generator": "^6.10",
"laravel/sail": "^1.0.1",
"mockery/mockery": "^1.4.4",
"nunomaduro/collision": "^7.0",

2174
api/composer.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -122,7 +122,7 @@ export CMAKE_OSX_ARCHITECTURES=arm64
STATIC_PHP_CLI_DIR="$OSX_DIR/frankenphp/dist/static-php-cli"
if [ ! -d "$STATIC_PHP_CLI_DIR" ]; then
log "Cloning static-php-cli into dist/..."
git clone https://github.com/crazywhalecc/static-php-cli.git "$STATIC_PHP_CLI_DIR"
git clone --depth 1 --branch 2.5.2 https://github.com/crazywhalecc/static-php-cli.git "$STATIC_PHP_CLI_DIR"
else
log_warn "static-php-cli already exists in dist/. Skipping clone."
fi

View File

@@ -23,6 +23,7 @@ export default class UserModel extends Model {
@attr('string') timezone;
@attr('string') country;
@attr('string') ip_address;
@attr('string') aws_customer_id;
@attr('string') slug;
@attr('string') role_name;
@attr('string') type;

View File

@@ -74,4 +74,10 @@ body.fleetbase-console .ember-power-select-trigger {
padding-right: 2.5rem;
padding-bottom: 0.5rem;
padding-left: 0.75rem;
}
/** hotfix sidebar-panel-toggle light mode - @todo move to ember-ui */
body[data-theme="light"] .next-sidebar .next-content-panel-wrapper .next-content-panel-container .next-content-panel > .next-content-panel-header.next-sidebar-panel-toggle:hover {
background-color: rgba(59, 130, 246, 1);
background-color: rgba(59, 130, 246, var(--tw-bg-opacity));
}

View File

@@ -35,4 +35,8 @@
<Button @icon="check" @iconPrefix="fas" @type="primary" @size="lg" @text={{t "onboard.index.continue-button-text"}} @isLoading={{this.isLoading}} @disabled={{this.readyToSubmit}} @onClick={{this.startOnboard}} />
</div>
</form>
<RegistryYield @registry="onboard" as |YieldedComponent ctx|>
<YieldedComponent @context={{ctx}} />
</RegistryYield>
</div>

View File

@@ -53,7 +53,7 @@ module.exports = function (defaults) {
},
filter: {
enabled: true,
plugins: [postcssAtRulesVariables, postcssMixins, postcssEach, postcssConditionals, tailwind('./tailwind.js')],
plugins: [postcssAtRulesVariables, postcssMixins, postcssEach, postcssConditionals, tailwind('./tailwind.config.js')],
},
},

View File

@@ -1,6 +1,6 @@
{
"name": "@fleetbase/console",
"version": "0.7.6",
"version": "0.7.10",
"private": true,
"description": "Modular logistics and supply chain operating system (LSOS)",
"repository": "https://github.com/fleetbase/fleetbase",
@@ -33,11 +33,11 @@
"@fleetbase/ember-core": "latest",
"@fleetbase/ember-ui": "latest",
"@fleetbase/fleetops-data": "latest",
"@fleetbase/fleetops-engine": "^0.6.15",
"@fleetbase/fleetops-engine": "^0.6.18",
"@fleetbase/iam-engine": "^0.1.3",
"@fleetbase/leaflet-routing-machine": "^3.2.17",
"@fleetbase/registry-bridge-engine": "^0.0.19",
"@fleetbase/storefront-engine": "^0.4.0",
"@fleetbase/storefront-engine": "^0.4.1",
"@fortawesome/ember-fontawesome": "^2.0.0",
"ember-changeset": "4.1.2",
"ember-changeset-validations": "4.1.2",

3885
console/pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,19 +1,21 @@
/** @type {import('tailwindcss').Config} */
module.exports = {
darkMode: ['class', '[data-theme="dark"]'],
content: [
'./app/**/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/**/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/templates/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/templates/**/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/components/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/components/**/*.{hbs,js}',
'./node_modules/@fleetbase/ember-core/addon/**/*.{hbs,js}',
'./node_modules/@fleetbase/fleetops-engine/addon/**/*.{hbs,js}',
'./node_modules/@fleetbase/storefront-engine/addon/**/*.{hbs,js}',
'./node_modules/@fleetbase/*-engine/addon/**/*.{hbs,js}',
'./node_modules/**/*-engine/addon/**/*.{hbs,js}',
'../packages/*-engine/addon/**/*.{hbs,js}',
content: {
relative: true,
files: [
'./app/**/*.{hbs,js}',
'./node_modules/.pnpm/@fleetbase+*/**/addon/**/*.{hbs,js}',
'./node_modules/@fleetbase+*/addon/**/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/templates/**/*.{hbs,js}',
'./node_modules/@fleetbase/ember-ui/addon/components/**/*.{hbs,js}',
'./node_modules/**/*-engine/addon/**/*.{hbs,js}'
],
},
safelist: [
{
pattern: /(py|px|mx|my|gap)-[1-9][0-9]?/,
},
],
theme: {
extend: {
@@ -94,7 +96,22 @@ module.exports = {
86: '30rem',
},
spacing: {
70: '18rem',
6: '1.5rem',
8: '2rem',
10: '2.5rem',
12: '3rem',
16: '4rem',
20: '5rem',
24: '6rem',
32: '8rem',
40: '10rem',
44: '11rem',
48: '12rem',
52: '13rem',
56: '14rem',
60: '15rem',
64: '16rem',
72: '18rem',
74: '22rem',
78: '26rem',
82: '28rem',

View File

@@ -24,13 +24,21 @@ target "app" {
// set the target from matrix
target = tgt
dockerfile = "docker/Dockerfile"
platforms = [
"linux/amd64",
]
platforms = ["linux/amd64", "linux/arm64"]
tags = notequal("", REGISTRY) ? formatlist(
GCP ? "${REGISTRY}/${tgt}:%s" : "${REGISTRY}:${tgt}-%s",
compact(["latest", VERSION])
# Generate tags for both the canonical name (${tgt})
# and an alias (api) *only when tgt == "app"*
tags = notequal("", REGISTRY) ? concat(
# normal tags for tgt (app/scheduler/events)
formatlist(
GCP ? "${REGISTRY}/${tgt}:%s" : "${REGISTRY}:${tgt}-%s",
compact(["latest", VERSION])
),
# alias tags for api (only if this is the "app" variant)
tgt == "app" ? formatlist(
GCP ? "${REGISTRY}/api:%s" : "${REGISTRY}:api-%s",
compact(["latest", VERSION])
) : []
) : []
args = {
@@ -44,9 +52,7 @@ target "app" {
target "app-httpd" {
context = "./"
dockerfile = "docker/httpd/Dockerfile"
platforms = [
"linux/amd64",
]
platforms = ["linux/amd64", "linux/arm64"]
tags = notequal("", REGISTRY) ? formatlist(
GCP ? "${REGISTRY}/app-httpd:%s" : "${REGISTRY}:app-httpd-%s",
@@ -57,7 +63,7 @@ target "app-httpd" {
target "fleetbase-console" {
context = "./console"
dockerfile = "Dockerfile"
platforms = ["linux/amd64"]
platforms = ["linux/amd64", "linux/arm64"]
tags = notequal("", REGISTRY) ? formatlist(
"${REGISTRY}/fleetbase-console:%s",
@@ -69,7 +75,7 @@ target "fleetbase-api" {
context = "./"
dockerfile = "docker/Dockerfile"
target = "app-release"
platforms = ["linux/amd64"]
platforms = ["linux/amd64", "linux/arm64"]
tags = notequal("", REGISTRY) ? formatlist(
"${REGISTRY}/fleetbase-api:%s",

View File

@@ -75,7 +75,7 @@ ENV QUEUE_CONNECTION=redis
ENV CADDYFILE_PATH=/fleetbase/Caddyfile
ENV CONSOLE_PATH=/fleetbase/console
ENV OCTANE_SERVER=frankenphp
ENV FLEETBASE_VERSION=0.7.6
ENV FLEETBASE_VERSION=0.7.10
# Set environment
ARG ENVIRONMENT=production

2
docs

Submodule docs updated: 61704f4855...5fffa79744