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

Polish Xcode integration #609

Closed
kelson42 opened this issue Jan 1, 2024 · 2 comments · Fixed by #610
Closed

Polish Xcode integration #609

kelson42 opened this issue Jan 1, 2024 · 2 comments · Fixed by #610
Assignees
Milestone

Comments

@kelson42
Copy link
Contributor

kelson42 commented Jan 1, 2024

  • I find odd that the libkiwix version is defined in the Brewfile. libkiwix is our top dependency and exposing it solely in a URL in the Brewfile feels hackish.
  • This PR doesn't update the CI and CD workflows which now relies on this mechanism. We thus end up with a LIBKIWIX-VERSION environ on those files that makes it look like it controls the version used while it doesn't anymore.
  • README says that the Brewfile will install latest CoreKiwix. That's not true. It will install the version specified in the brewfile. We have a URL for the latest version but we're not using it (on purpose) so this sentence is misleading.
  • DEVELOPMENT_TEAM is not a secret value but it's part of the several values associated with signing. In all repos we need them, we store it as a secret for convenience: when updating signing params, everything's in the same place. Given it doesn't change when certificates are renewed, we should remove it from the secrets… but you need to remove it from the places that are looking for it (CI, CD).

Reported at #606 (comment)

@kelson42 kelson42 added this to the 3.3.0 milestone Jan 1, 2024
@kelson42
Copy link
Contributor Author

kelson42 commented Jan 1, 2024

  • I find odd that the libkiwix version is defined in the Brewfile. libkiwix is our top dependency and exposing it solely in a URL in the Brewfile feels hackish.

@rgaudin What would be an better altenative approach?

* This PR doesn't update the CI and CD workflows which now relies on this mechanism. We thus end up with a `LIBKIWIX-VERSION` environ on those files that makes it look like it controls the version used while it doesn't anymore.

@BPerlakiH Why?

* README says that the Brewfile will install **latest** CoreKiwix. That's not true. It will install the version specified in the brewfile. We have a URL for the latest version but we're not using it (on purpose) so this sentence is misleading.

Dependencies version should be explicit anyway. Readme should be fixed.

* `DEVELOPMENT_TEAM` is not a secret value but it's part of the several values associated with signing. In all repos we need them, we store it as a secret for convenience: when updating signing params, everything's in the same place. Given it doesn't change when certificates are renewed, we should remove it from the secrets… but you need to remove it from the places that are looking for it (CI, CD).

I prefer the secret for convenience, but if this approach is proven to be combersome, then lets hardcode it everywhere. In any case, this has to be fixed.

@BPerlakiH Please treat ticket in priority.

@BPerlakiH
Copy link
Collaborator

I've addressed these issues here: #610

The Development Team value. Yes, I think that can be removed from secrets, I do not think it is a priority atm.

The team id value contained in the project file is only a default one, and can be overwritten both in the building, and later in the code signing process. For these reasons, I think it can be treated separately.

The code signing part is really a separate step. It is so much separated, that in theory even a different team id can be used to sign the final app. I think, at the very end of the review process Apple even re-signs all the apps once more, before they make it to the App Store in their final form.

Since we are about to update the code signing / releasing part of our process (to fastlane + match), I would like to leave this part for later.

I will keep in mind that we should ideally have a single source of truth for the value of the team id, if that's possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
No open projects
Status: DONE
Development

Successfully merging a pull request may close this issue.

2 participants