From 08add3844991ee912cbb5fdcbe004ab0462a081f Mon Sep 17 00:00:00 2001 From: Bruce Weirdan Date: Sun, 12 Mar 2023 02:01:01 -0400 Subject: [PATCH 1/2] Optimize composer caching Previously our composer package cache would not be updated because we had no `composer.lock` (which hash is used as part of the cache key). Generating `composer.lock` (but not installing packages) before we check the cache fixes this. --- .github/workflows/bcc.yml | 4 ++++ .github/workflows/build-phar.yml | 4 ++++ .github/workflows/ci.yml | 8 ++++++++ .github/workflows/windows-ci.yml | 4 ++++ 4 files changed, 20 insertions(+) diff --git a/.github/workflows/bcc.yml b/.github/workflows/bcc.yml index 6264f7a4158..56c8e298510 100644 --- a/.github/workflows/bcc.yml +++ b/.github/workflows/bcc.yml @@ -23,6 +23,10 @@ jobs: echo "files_cache=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT echo "vcs_cache=$(composer config cache-vcs-dir)" >> $GITHUB_OUTPUT + - name: Generate composer.lock + run: | + composer update --no-install + - name: Cache composer cache uses: actions/cache@v3 with: diff --git a/.github/workflows/build-phar.yml b/.github/workflows/build-phar.yml index 2f7d467a1bd..4f785f3be1a 100644 --- a/.github/workflows/build-phar.yml +++ b/.github/workflows/build-phar.yml @@ -52,6 +52,10 @@ jobs: echo "files_cache=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT echo "vcs_cache=$(composer config cache-vcs-dir)" >> $GITHUB_OUTPUT + - name: Generate composer.lock + run: | + composer update --no-install + - name: Cache composer cache uses: actions/cache@v3 with: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 552dc6b7363..d4d65251936 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,6 +24,10 @@ jobs: echo "files_cache=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT echo "vcs_cache=$(composer config cache-vcs-dir)" >> $GITHUB_OUTPUT + - name: Generate composer.lock + run: | + composer update --no-install + - name: Cache composer cache uses: actions/cache@v3 with: @@ -97,6 +101,10 @@ jobs: echo "files_cache=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT echo "vcs_cache=$(composer config cache-vcs-dir)" >> $GITHUB_OUTPUT + - name: Generate composer.lock + run: | + composer update --no-install + - name: Cache composer cache uses: actions/cache@v3 with: diff --git a/.github/workflows/windows-ci.yml b/.github/workflows/windows-ci.yml index 396b6fff8d8..0c0960f86e3 100644 --- a/.github/workflows/windows-ci.yml +++ b/.github/workflows/windows-ci.yml @@ -69,6 +69,10 @@ jobs: echo "vcs_cache=$(composer config cache-vcs-dir)" >> $GITHUB_OUTPUT shell: bash + - name: Generate composer.lock + run: | + composer update --no-install + - name: Cache composer cache uses: actions/cache@v3 with: From c917826ff85f21fcd8bb2e9fc1be90ff266787a6 Mon Sep 17 00:00:00 2001 From: Bruce Weirdan Date: Sun, 12 Mar 2023 02:15:47 -0400 Subject: [PATCH 2/2] Pass `COMPOSER_ROOT_VERSION` to `composer update` when we don't have full git history --- .github/workflows/ci.yml | 4 ++++ .github/workflows/windows-ci.yml | 2 ++ 2 files changed, 6 insertions(+) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d4d65251936..654b10fa150 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -27,6 +27,8 @@ jobs: - name: Generate composer.lock run: | composer update --no-install + env: + COMPOSER_ROOT_VERSION: dev-master - name: Cache composer cache uses: actions/cache@v3 @@ -104,6 +106,8 @@ jobs: - name: Generate composer.lock run: | composer update --no-install + env: + COMPOSER_ROOT_VERSION: dev-master - name: Cache composer cache uses: actions/cache@v3 diff --git a/.github/workflows/windows-ci.yml b/.github/workflows/windows-ci.yml index 0c0960f86e3..62dab1a35bf 100644 --- a/.github/workflows/windows-ci.yml +++ b/.github/workflows/windows-ci.yml @@ -72,6 +72,8 @@ jobs: - name: Generate composer.lock run: | composer update --no-install + env: + COMPOSER_ROOT_VERSION: dev-master - name: Cache composer cache uses: actions/cache@v3