Skip to content
This repository was archived by the owner on Oct 22, 2024. It is now read-only.

Update release desktop workflow to avoid link common package#561

Merged
cryptotavares merged 8 commits intomainfrom
chore/update-release-desktop-workflow-to-avoid-link-common-package
Mar 1, 2023
Merged

Update release desktop workflow to avoid link common package#561
cryptotavares merged 8 commits intomainfrom
chore/update-release-desktop-workflow-to-avoid-link-common-package

Conversation

@cryptotavares
Copy link
Copy Markdown
Contributor

@cryptotavares cryptotavares commented Feb 28, 2023

Overview

Added logic to CI to only link the common workspace to the submodule dependencies when not doing/testing a release.
Also took the opportunity to update the submodule commit to the latest one.

Changes

Root

Update the submodule commit. It now points to this one.

Pipeline

Update CircleCi to only link the common package to the Extension submodule when:

  • branch is neither app-stable or starts with release/* (release branches)
  • running workflow due to an Extension release.

Update Github Actions package workflows to not link the common package to the Extension submodule.

Common

None.

App

Updated app dependencies to match Extension dependencies.

@cryptotavares cryptotavares requested a review from a team February 28, 2023 13:07
@cryptotavares cryptotavares force-pushed the chore/update-release-desktop-workflow-to-avoid-link-common-package branch from 2d7328b to 81421c3 Compare February 28, 2023 16:04
Copy link
Copy Markdown
Member

@matthewwalsh0 matthewwalsh0 Mar 1, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I intentionally put this in a separate job as it's not fast, and it blocks all the remaining jobs such as the app and UI building even though they don't need this. We can still use the conditions to skip the steps when running in a release though, and even create a command to avoid duplicating the conditions.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My thinking was that as the e2e tests depend on both build App, build UI and build Extension, they indirectly pending on the install. The upside of splitting could be a very small performance improvement (in case the ui and app build would take longer than the extension build.. which is not the case btw).
Then the downside is If we split this job into two, we would make the workflow more complex. I believe we would need this:

  • have a command to run the setup extension + recreated lavamoat policies
  • have a job that runs and echo script to just run something and then would run the previous command created if certain conditions are met.
  • update the test_and_release workflow and add the previous job as required for the build-extension-* jobs. (We need the echo script on the previous job in order for the job to run something successful and be considered complete. Otherwise the build-extension-* jobs would never start)

Copy link
Copy Markdown
Member

@matthewwalsh0 matthewwalsh0 Mar 1, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it worth sticking with environment variables for configuration, just for readability and consistency? At a glance we don't know what this means plus an env is a little more flexible as it can be defined at any level.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah dam.. I left that on the package workflows, but I'll remove it (there's no need for that step on the package workflow as there's nothing to setup on the extension). Then the flags is just for dev, but yeah I can replace it with an env var. Makes more sense 👍

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

❤️

@cryptotavares cryptotavares force-pushed the chore/update-release-desktop-workflow-to-avoid-link-common-package branch 2 times, most recently from 3c3769d to 51bf0b5 Compare March 1, 2023 16:12
@cryptotavares cryptotavares force-pushed the chore/update-release-desktop-workflow-to-avoid-link-common-package branch 2 times, most recently from f050c33 to 5232e53 Compare March 1, 2023 17:40
@cryptotavares cryptotavares force-pushed the chore/update-release-desktop-workflow-to-avoid-link-common-package branch from 5232e53 to f39fac9 Compare March 1, 2023 17:51
@cryptotavares cryptotavares merged commit 6e373de into main Mar 1, 2023
@cryptotavares cryptotavares deleted the chore/update-release-desktop-workflow-to-avoid-link-common-package branch March 1, 2023 18:33
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants