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

[ci]: Tooling update #254

Merged
merged 8 commits into from
Feb 2, 2024
Merged

[ci]: Tooling update #254

merged 8 commits into from
Feb 2, 2024

Conversation

calvincestari
Copy link
Member

@calvincestari calvincestari commented Feb 1, 2024

The release of Tuist 4.0.0-beta-1 appears to have broken our workflow. It looks like they're trying to fix the environment but we should stay on 3.x until 4 is stable.

The aim of this PR was to fix Tuist which it does by:

  • brings the installation into this repo in a script which we can control and with the installed version controlled by our pinned version of Tuist.
  • bumps the Tuist pinned version to the latest 3.x release which is 3.42.2.
  • updates the README to use the local installation script for Tuist.

Other changes in this PR:

@calvincestari calvincestari requested a review from a team as a code owner February 1, 2024 21:45
Copy link

netlify bot commented Feb 1, 2024

Deploy Preview for eclectic-pie-88a2ba canceled.

Name Link
🔨 Latest commit 52b9db8
🔍 Latest deploy log https://app.netlify.com/sites/eclectic-pie-88a2ba/deploys/65bc136c4fd6bd000803a43b

./scripts/install-tuist.sh
Copy link
Member Author

@calvincestari calvincestari Feb 1, 2024

Choose a reason for hiding this comment

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

Tuist installation is now under our control in a local script.

needs: [changes]
if: ${{ needs.changes.outputs.ios == 'true' || needs.changes.outputs.codegen == 'true' || needs.changes.outputs.pagination == 'true' }}
if: ${{ needs.changes.outputs.ios == 'true' || needs.changes.outputs.codegen == 'true' || needs.changes.outputs.pagination == 'true' || needs.changes.outputs.tuist == 'true' }}
Copy link
Member Author

Choose a reason for hiding this comment

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

The tuist-generation job should run whenever we change the pinned Tuist version.

with:
command: 'generate'
arguments: ''
uses: ./.github/actions/run-tuist-generation
Copy link
Member Author

@calvincestari calvincestari Feb 1, 2024

Choose a reason for hiding this comment

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

We already had a local action but it wasn't being used. This drops the broken tuist-action from the marketplace and uses our own one that we can control.

}

# The line below extracts the version from the local .tuist-version file and installs that version tag from the github releases.
LATEST_VERSION=$(cat .tuist-version)
Copy link
Member Author

Choose a reason for hiding this comment

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

The installed Tuist version will always match what we've pinned it to.

Copy link
Member Author

@calvincestari calvincestari Feb 1, 2024

Choose a reason for hiding this comment

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

It's worth noting that this installation never actually installs Tuist itself but rather tuistenv which was their prior version manager, and what they're moving away from in favour of mise. If you look at the terminal output the actual Tuist version is installed when you issue the first command, such as generate.

Copy link
Member

@BobaFetters BobaFetters left a comment

Choose a reason for hiding this comment

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

This looks great! Nice work!

@calvincestari calvincestari merged commit aa844bd into main Feb 2, 2024
20 checks passed
@calvincestari calvincestari deleted the tooling-update branch February 2, 2024 18:12
BobaFetters pushed a commit that referenced this pull request Feb 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants