Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
47a87da
fix(compose): Fix compose file path resolution as it is copied into t…
florianPat Nov 1, 2024
ff5cb37
refactor(compose): Fix to use the configured compose seperator in all…
florianPat Nov 1, 2024
c3f7fa0
fix(app.mounts): Use configured appMount of service and not always /a…
florianPat Oct 2, 2024
09e6d95
refactor(home-dir): Add a config option to just share the ssh directo…
florianPat Nov 1, 2024
c5f51dc
update(traefik): Enable the traefik dashboard as thats useful per def…
florianPat Nov 1, 2024
270a0de
fix(perm-helpers): Fix permission setup so that it also works for alpine
florianPat Dec 29, 2024
1394bfe
fix(tooling): Check that container setup is finished at container sta…
florianPat Sep 9, 2024
e657d25
fix(events): Make sure the perm-sweep is run for docker-compose services
florianPat Nov 16, 2024
97ecf8d
feat(exec): Exec can also run if the app is not yet started and add n…
florianPat Oct 19, 2024
14f8d4c
feat(volumes): Use the lando proxy dir as the config volume and there…
florianPat Sep 9, 2024
ae48dea
fix(docker): Docker in bitbucket pipelines has another error message,…
florianPat Jan 2, 2025
ba52275
feat(bootstrap): Add special '_init' service for events so that one c…
florianPat Oct 19, 2024
1fbeecd
feat(bootstrap): Add bootstrap event handling and fix lando is not ye…
florianPat Oct 19, 2024
c1269c9
feat(_init-for-tooling): Add special _init service for tooling commands
florianPat Oct 20, 2024
7c8f5b4
feat(init): Remove init compose after execution
florianPat Oct 19, 2024
16c9317
feat(core): Add core loading also from config
florianPat Nov 7, 2024
2bebeb1
fix(config): Fix reloading of lando config after setup as binary config
florianPat Jan 3, 2025
2675de7
feat(events): Add special `lando` service for events to run tooling t…
florianPat Jan 5, 2025
415d17e
feat: Optional docker composification of project name
florianPat Jan 6, 2025
3d2c6b4
fix(lando-entrypoint): Due to script mounting changes the fallback of
florianPat Jan 19, 2025
bbfdb5d
feat(env-file): Add compose_env_file option to the .lando.yml
florianPat Feb 24, 2025
ecf2713
feat(docker-bin): Use which docker to find the docker binary
florianPat Mar 4, 2025
dc7dced
feat(cli): Add lando_cli env var as a yargs configuration
florianPat Mar 4, 2025
f8c8144
fix(setup-engine): Do not throw an error if docker desktop is not
florianPat Mar 13, 2025
843d9fd
feat(plugin-auth): Inject auth from home npmrc to authenticate agains…
florianPat Aug 22, 2025
11ad187
feat(wsl): Use docker-engine in wsl instead of docker desktop for bet…
florianPat Aug 25, 2025
9ae9e14
feat(proxy): Add option to not strip hostname prefixes
florianPat Aug 25, 2025
ec8e73a
Revert "feat(wsl): Use docker-engine in wsl instead of docker desktop…
florianPat Aug 29, 2025
499ce89
feat: Reduce volumes
florianPat Dec 2, 2025
6fb6051
chore: Make sure to not have another install indirection and just ins…
florianPat Dec 3, 2025
9ce3ea1
feat: Use homepageurl of the core plugin to update the core/cli
florianPat Jan 4, 2026
dc33af8
chore: Bump docker versions
florianPat Dec 4, 2025
e09c7e1
chore: Remove unneeded reset orchastrator
florianPat Dec 7, 2025
596cc79
fix(pull): Do not try to pull an image which is buildable in docker c…
florianPat Dec 30, 2025
914de72
perf: Only copy scripts on plugin change and do not check the version…
florianPat Dec 31, 2025
0be85b5
chore: Bump pkg version
florianPat Dec 31, 2025
e1174b3
fix: Trusted publishing
florianPat Dec 30, 2025
b78d302
fix: Make sure that the home directory is preserved
florianPat Jan 4, 2026
ffc4000
feat: Be able to pass compose options through to docker compose
florianPat Jan 4, 2026
134f60b
feat: Add in env vars from the LANDO_CLI_ENV_JSON env var
florianPat Jan 5, 2026
f5a2866
feat: Do not strip COMPOSE_ env variables
florianPat Jan 5, 2026
5e93fd2
chore: flos core package changes and make release possible
florianPat Dec 30, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
64 changes: 28 additions & 36 deletions .github/workflows/deploy-npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,6 @@ on:
github-token:
description: "The github token"
required: true
npm-token:
description: "The npm deploy token"
required: true

jobs:
deploy-npm:
Expand All @@ -28,34 +25,31 @@ jobs:
uses: actions/setup-node@v4
with:
node-version: ${{ inputs.node-version }}
registry-url: https://registry.npmjs.org
cache: npm
- name: Install dependencies
run: npm clean-install --prefer-offline --frozen-lockfile
- name: Lint code
run: npm run lint
- name: Run unit tests
run: npm run test:unit
- name: Update edge release alias
shell: bash
run: |
if ./scripts/semcompare.sh "${{ github.event.release.tag_name }}" "$(cat ./release-aliases/3-EDGE)"; then
echo "${{ github.event.release.tag_name }}" > ./release-aliases/3-EDGE
fi
- name: Update stable release alias
shell: bash
if: github.event.release.prerelease == false
run: |
if ./scripts/semcompare.sh "${{ github.event.release.tag_name }}" "$(cat ./release-aliases/3-STABLE)"; then
echo "${{ github.event.release.tag_name }}" > ./release-aliases/3-STABLE
fi
#- name: Update edge release alias
# shell: bash
# run: |
# if ./scripts/semcompare.sh "${{ github.event.release.tag_name }}" "$(cat ./release-aliases/3-EDGE)"; then
# echo "${{ github.event.release.tag_name }}" > ./release-aliases/3-EDGE
# fi
#- name: Update stable release alias
# shell: bash
# if: github.event.release.prerelease == false
# run: |
# if ./scripts/semcompare.sh "${{ github.event.release.tag_name }}" "$(cat ./release-aliases/3-STABLE)"; then
# echo "${{ github.event.release.tag_name }}" > ./release-aliases/3-STABLE
# fi
- name: Prepare Release
uses: lando/prepare-release-action@v3
with:
lando-plugin: true
sync-token: ${{ secrets.github-token }}
sync-email: [email protected]
sync-username: rtfm-47
sync: false
- name: Upgrade npm for trusted publishing
run: npm install -g "npm@^11.5.1"
- name: Publish to npm
Expand All @@ -64,9 +58,9 @@ jobs:
PACKAGE=$(node -p "require('./package.json').name")

if [ "${{ github.event.release.prerelease }}" == "false" ]; then
npm publish --access public --dry-run
npm publish --access public
npm dist-tag add "$PACKAGE@$VERSION" edge
npm publish --access public --tag latest --dry-run
npm publish --access public --tag latest
# npm dist-tag add "$PACKAGE@$VERSION" edge # not supported with trusted publishing

echo "::notice title=Published $VERSION to $PACKAGE::This is a stable release published to the default 'latest' npm tag"
echo "::notice title=Updated latest tag to $VERSION::The stable tag now points to $VERSION"
Expand All @@ -78,16 +72,14 @@ jobs:
echo "::notice title=Published $VERSION to $PACKAGE::This is a prerelease published to the 'edge' npm tag"
echo "::notice title=Updated edge tag to $VERSION::The edge tag now points to $VERSION"
fi
env:
NODE_AUTH_TOKEN: ${{ secrets.npm-token }}
- name: Update edge release alias on main
if: github.event.release.target_commitish == 'edge'
run: |
git clone https://github.com/lando/core.git core
cd core
git config user.name "rtfm-47"
git config user.email "[email protected]"
echo "${{ github.event.release.tag_name }}" > ./release-aliases/3-EDGE
git add .
git commit -m "Update edge release alias to ${{ github.event.release.tag_name }} triggered by @rtfm-47"
git push https://x-access-token:${{ secrets.github-token }}@github.com/lando/core.git main
#- name: Update edge release alias on main
# if: github.event.release.target_commitish == 'edge'
# run: |
# git clone https://github.com/lando/core.git core
# cd core
# git config user.name "rtfm-47"
# git config user.email "[email protected]"
# echo "${{ github.event.release.tag_name }}" > ./release-aliases/3-EDGE
# git add .
# git commit -m "Update edge release alias to ${{ github.event.release.tag_name }} triggered by @rtfm-47"
# git push https://x-access-token:${{ secrets.github-token }}@github.com/lando/core.git main
78 changes: 39 additions & 39 deletions .github/workflows/dev-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -29,38 +29,38 @@ jobs:
os: ${{ matrix.os }}
version: dev

sign:
uses: ./.github/workflows/sign-binary.yml
needs:
- package
strategy:
fail-fast: false
matrix:
file:
- lando-linux-arm64-${{ github.sha }}
- lando-macos-arm64-${{ github.sha }}
- lando-win-arm64-${{ github.sha }}
#sign:
# uses: ./.github/workflows/sign-binary.yml
# needs:
# - package
# strategy:
# fail-fast: false
# matrix:
# file:
# - lando-linux-arm64-${{ github.sha }}
# - lando-macos-arm64-${{ github.sha }}
# - lando-win-arm64-${{ github.sha }}

- lando-linux-x64-${{ github.sha }}
- lando-macos-x64-${{ github.sha }}
- lando-win-x64-${{ github.sha }}
# - lando-linux-x64-${{ github.sha }}
# - lando-macos-x64-${{ github.sha }}
# - lando-win-x64-${{ github.sha }}

with:
download-pattern: packaged-lando-*
file: ${{ matrix.file }}
secrets:
apple-notary-user: ${{ secrets.APPLE_NOTARY_USER }}
apple-notary-password: ${{ secrets.APPLE_NOTARY_PASSWORD }}
certificate-data: ${{ contains(matrix.file, 'macos') && secrets.APPLE_CERT_DATA || secrets.KEYLOCKER_CLIENT_CERT }}
certificate-password: ${{ contains(matrix.file, 'macos') && secrets.APPLE_CERT_PASSWORD || secrets.KEYLOCKER_CLIENT_CERT_PASSWORD }}
keylocker-api-key: ${{ secrets.KEYLOCKER_API_KEY }}
keylocker-cert-sha1-hash: ${{ secrets.KEYLOCKER_CERT_SHA1_HASH }}
keylocker-keypair-alias: ${{ secrets.KEYLOCKER_KEYPAIR_ALIAS }}
# with:
# download-pattern: packaged-lando-*
# file: ${{ matrix.file }}
# secrets:
# apple-notary-user: ${{ secrets.APPLE_NOTARY_USER }}
# apple-notary-password: ${{ secrets.APPLE_NOTARY_PASSWORD }}
# certificate-data: ${{ contains(matrix.file, 'macos') && secrets.APPLE_CERT_DATA || secrets.KEYLOCKER_CLIENT_CERT }}
# certificate-password: ${{ contains(matrix.file, 'macos') && secrets.APPLE_CERT_PASSWORD || secrets.KEYLOCKER_CLIENT_CERT_PASSWORD }}
# keylocker-api-key: ${{ secrets.KEYLOCKER_API_KEY }}
# keylocker-cert-sha1-hash: ${{ secrets.KEYLOCKER_CERT_SHA1_HASH }}
# keylocker-keypair-alias: ${{ secrets.KEYLOCKER_KEYPAIR_ALIAS }}

build-release-binary-alias:
uses: ./.github/workflows/release-rename-binary.yml
needs:
- sign
- package
strategy:
fail-fast: false
matrix:
Expand All @@ -77,11 +77,11 @@ jobs:
with:
source: lando-${{ matrix.os }}-${{ matrix.arch }}-${{ github.sha }}
destination: lando-${{ matrix.os }}-${{ matrix.arch }}-${{ matrix.alias }}
download-pattern: signed-lando-*
download-pattern: packaged-lando-*
build-release-binary-branch:
uses: ./.github/workflows/release-rename-binary.yml
needs:
- sign
- package
strategy:
fail-fast: false
matrix:
Expand All @@ -96,7 +96,7 @@ jobs:
with:
source: lando-${{ matrix.os }}-${{ matrix.arch }}-${{ github.sha }}
destination: lando-${{ matrix.os }}-${{ matrix.arch }}-${{ github.head_ref || github.ref_name }}
download-pattern: signed-lando-*
download-pattern: packaged-lando-*

checksum:
uses: ./.github/workflows/generate-checksums.yml
Expand All @@ -116,16 +116,16 @@ jobs:
show: true
upload-name: release-checksums-${{ matrix.alias }}

deploy-releases-s3:
uses: ./.github/workflows/deploy-s3.yml
needs:
- checksum
with:
download-pattern: release-*
secrets:
aws-secret-access-key: ${{ secrets.S3_SECRET_ACCESS_KEY }}
aws-access-key-id: ${{ secrets.S3_ACCESS_KEY_ID }}
aws-region: us-east-1
#deploy-releases-s3:
# uses: ./.github/workflows/deploy-s3.yml
# needs:
# - checksum
# with:
# download-pattern: release-*
# secrets:
# aws-secret-access-key: ${{ secrets.S3_SECRET_ACCESS_KEY }}
# aws-access-key-id: ${{ secrets.S3_ACCESS_KEY_ID }}
# aws-region: us-east-1
deploy-releases-artifacts:
uses: ./.github/workflows/deploy-artifacts.yml
needs:
Expand Down
16 changes: 8 additions & 8 deletions .github/workflows/pkg-binary.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,8 +51,8 @@ jobs:
cache: npm
- name: Install dependencies
run: npm clean-install --prefer-offline --frozen-lockfile --production
- name: Install plugins
run: scripts/install-plugins.sh --lando bin/lando ${{ inputs.edge == true && '--edge' || '' }}
#- name: Install plugins
# run: scripts/install-plugins.sh --lando bin/lando ${{ inputs.edge == true && '--edge' || '' }}
- name: Switch to edge channel
if: inputs.edge == true
run: |
Expand All @@ -71,7 +71,7 @@ jobs:
node-version: ${{ inputs.node-version }}
os: ${{ inputs.os }}
options: --options dns-result-order=ipv4first
pkg: "@yao-pkg/pkg@5.16.1"
pkg: "@yao-pkg/pkg@6.4.0"
upload-key: "packaged-${{ inputs.filename }}-${{ inputs.os }}-${{ inputs.arch }}-${{ github.sha }}"
- name: Ensure version
if: (inputs.os == 'linux' && runner.os == 'Linux') || (inputs.os == 'macos' && runner.os == 'macOS')
Expand All @@ -82,8 +82,8 @@ jobs:
- name: Ensure channel
if: (inputs.os == 'linux' && runner.os == 'Linux') || (inputs.os == 'macos' && runner.os == 'macOS')
run: ./dist/${{ inputs.filename }} config --path channel | grep ${{ inputs.edge == true && 'edge' || 'stable' }}
- name: Ensure plugin install
if: ((inputs.os == 'linux' && runner.os == 'Linux') || (inputs.os == 'macos' && runner.os == 'macOS'))
run: |
./dist/${{ inputs.filename }} config --path fatcore | grep true
./dist/${{ inputs.filename }} config | grep -q "/snapshot/core/plugins/wordpress"
#- name: Ensure plugin install
# if: ((inputs.os == 'linux' && runner.os == 'Linux') || (inputs.os == 'macos' && runner.os == 'macOS'))
# run: |
# ./dist/${{ inputs.filename }} config --path fatcore | grep true
# ./dist/${{ inputs.filename }} config | grep -q "/snapshot/core/plugins/wordpress"
2 changes: 1 addition & 1 deletion .github/workflows/pr-core-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -103,7 +103,7 @@ jobs:
node-version: ${{ matrix.node-version }}
options: --options dns-result-order=ipv4first
upload: false
pkg: "@yao-pkg/pkg@5.16.1"
pkg: "@yao-pkg/pkg@6.4.0"
- name: Install full deps
run: npm clean-install --prefer-offline --frozen-lockfile
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-docs-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ jobs:
node-version: ${{ matrix.node-version }}
options: --options dns-result-order=ipv4first
upload: false
pkg: "@yao-pkg/pkg@5.16.1"
pkg: "@yao-pkg/pkg@6.4.0"
- name: Install full deps
run: npm clean-install --prefer-offline --frozen-lockfile
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-setup-linux-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
node-version: ${{ matrix.node-version }}
options: --options dns-result-order=ipv4first
upload: false
pkg: "@yao-pkg/pkg@5.16.1"
pkg: "@yao-pkg/pkg@6.4.0"
- name: Install full deps
run: npm clean-install --prefer-offline --frozen-lockfile
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-setup-macos-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ jobs:
node-version: ${{ matrix.node-version }}
options: --options dns-result-order=ipv4first
upload: false
pkg: "@yao-pkg/pkg@5.16.1"
pkg: "@yao-pkg/pkg@6.4.0"
- name: Install full deps
run: npm clean-install --prefer-offline --frozen-lockfile
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pr-setup-windows-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ jobs:
node-version: ${{ matrix.node-version }}
options: --options dns-result-order=ipv4first
upload: false
pkg: "@yao-pkg/pkg@5.16.1"
pkg: "@yao-pkg/pkg@6.4.0"
- name: Install full deps
run: npm clean-install --prefer-offline --frozen-lockfile
- name: Setup lando ${{ steps.pkg-action.outputs.file }}
Expand Down
Loading
Loading