Skip to content

chore(deps): update dependency ember-cli to v5 #4369

chore(deps): update dependency ember-cli to v5

chore(deps): update dependency ember-cli to v5 #4369

Workflow file for this run

name: CI
on:
push:
branches:
- main
- master
pull_request: {}
concurrency:
group: ci-${{ github.head_ref || github.ref }}
cancel-in-progress: true
env:
CI: true
dist: ember-resources/dist
jobs:
install_dependencies:
name: Install
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
lint:
name: Lint
runs-on: ubuntu-latest
needs: [install_dependencies]
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
- name: Lint
run: pnpm lint
build:
name: Build Tests
needs: [install_dependencies]
timeout-minutes: 5
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/assert-build
typecheck:
name: '${{ matrix.typescript-scenario }}'
runs-on: ubuntu-latest
timeout-minutes: 5
needs: [build]
continue-on-error: true
strategy:
fail-fast: true
matrix:
typescript-scenario:
- [email protected]
- [email protected]
- [email protected]
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- name: 'Change TS to ${{ matrix.typescript-scenario }}'
run: 'pnpm add --save-dev ${{ matrix.typescript-scenario}}'
working-directory: ./test-app
- name: 'Type checking'
run: |
pnpm --filter "test-app*" exec tsc -v;
pnpm --filter "test-app*" exec glint --version;
pnpm --filter "test-app*" exec glint;
default_tests:
name: Default Tests
timeout-minutes: 5
runs-on: ubuntu-latest
needs: [build]
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- run: pnpm --filter test-app test:ember
floating_tests:
name: Floating Deps Test
timeout-minutes: 5
runs-on: ubuntu-latest
needs: [build]
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
with:
no-lockfile: true
- uses: ./.github/actions/download-built-package
- run: pnpm --filter test-app test:ember
try_scenarios:
name: ${{ matrix.try-scenario }}
timeout-minutes: 5
runs-on: ubuntu-latest
needs: [default_tests]
strategy:
fail-fast: false
matrix:
try-scenario:
- ember-3.28
- ember-4.0.0
- ember-4.4
- ember-4.8
- ember-4.12
- ember-release
- ember-beta
- ember-canary
- embroider-safe
- embroider-optimized
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- name: Run Tests
working-directory: ./test-app
run: >-
node_modules/.bin/ember try:one ${{ matrix.try-scenario }}
--skip-cleanup
test-ember-concurrency:
name: "w/ ${{ matrix.concurrencyVersion }}"
timeout-minutes: 5
runs-on: ubuntu-latest
needs: [default_tests]
strategy:
fail-fast: false
matrix:
concurrencyVersion:
- "test-app-ember-concurrency-2"
- "test-app-ember-concurrency-3"
steps:
- uses: actions/checkout@v3
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- name: Run Tests
run: pnpm test:ember
working-directory: ${{ matrix.concurrencyVersion }}
# https://github.com/changesets/action
release:
name: Release
timeout-minutes: 5
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
needs:
- default_tests
- floating_tests
- typecheck
- try_scenarios
- test-ember-concurrency
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- name: Create Release Pull Request or Publish to npm
id: changesets
uses: changesets/action@v1
with:
# This expects you to have a script called release which does a build for your packages and calls changeset publish
publish: pnpm release
title: "Release Preview"
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
MeasureAssetSizes:
name: Measure Asset Sizes
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- name: measure asset sizes
run: node ./dev/estimate-bytes/index.js
- name: comment on PR
uses: marocchino/sticky-pull-request-comment@v2
with:
header: asset-sizes
path: ./dev/estimate-bytes/comment.txt
PublishDocstoCloudflarePages:
name: Publish Docs to Cloudflare Pages
runs-on: ubuntu-latest
needs: build
permissions:
contents: read
deployments: write
outputs:
url: ${{ steps.publishStep.outputs.url }}
env: ${{ steps.publishStep.outputs.environment }}
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- run: |
pnpm build:docs
cd docs/
# cloudflare broke all user's Sites that have a "functions" path.
# ... thanks cloudflare. you're usually such a good company :p
#
# - https://github.com/NullVoxPopuli/ember-resources/issues/679
# - https://github.com/TypeStrong/typedoc/issues/2111
# - https://github.com/cloudflare/wrangler2/issues/2240
mv dist/functions dist/funcs
find ./dist -type f -name '*.html' | xargs sed -i.bak --regexp-extended 's:(href="[^"]*)functions/:\1funcs/:g'
- name: Publish to Cloudflare Pages
id: publishStep
uses: cloudflare/[email protected]
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
projectName: ember-resources
directory: ./docs/dist
gitHubToken: ${{ secrets.GITHUB_TOKEN }}
PostPreviewURLascommenttoPR:
name: Post Preview URL as comment to PR
runs-on: ubuntu-latest
needs: PublishDocstoCloudflarePages
if: github.ref != 'refs/heads/main'
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- uses: NullVoxPopuli/action-setup-pnpm@v2
- uses: ./.github/actions/download-built-package
- uses: marocchino/sticky-pull-request-comment@v2
with:
header: preview-urls
# GH Env: ${{ needs.PublishDocstoCloudflarePages.outputs.env }}
message: |+
## Preview URLs
readme: ${{ needs.PublishDocstoCloudflarePages.outputs.url }}
api docs: ${{ needs.PublishDocstoCloudflarePages.outputs.url }}/modules.html