Skip to content

Conversation

@KolbyML
Copy link

@KolbyML KolbyML commented Jan 9, 2026

Here is a github workflow to help you with releases, I know doing tedious stuff like that is tedious, so I hope this helps <3

Here are some instructions if needed written by ai for reference on how to generate the secrets if needed

1. Generate a New Keystore
If you do not have a keystore file yet, run this command in your terminal. It will create a file named release.keystore.

Bash

keytool -genkey -v -keystore release.keystore -alias ankiconnect_key -keyalg RSA -keysize 2048 -validity 10000
Password: You will be prompted to create a password. Remember this for KEYSTORE_PASSWORD and KEY_PASSWORD.

Alias: The command above sets the alias to ankiconnect_key.

Details: You can press Enter to skip the organizational questions.

2. Encode Keystore for GitHub
GitHub Secrets cannot store binary files, so you must convert the .keystore file into a text string.

For Mac or Linux:

Bash

base64 -w 0 release.keystore > secrets_to_copy.txt
For Windows (PowerShell):

PowerShell

[Convert]::ToBase64String([System.IO.File]::ReadAllBytes("release.keystore")) | Out-File -FilePath secrets_to_copy.txt
3. Add Secrets to GitHub
Open your repository on GitHub.

Go to Settings > Secrets and variables > Actions.

Click New repository secret for each of the following:

Name: ANDROID_SIGNING_KEY Value: (Copy the entire long text string from secrets_to_copy.txt)

Name: KEY_ALIAS Value: ankiconnect_key

Name: KEYSTORE_PASSWORD Value: (The password you created in Step 1)

Name: KEY_PASSWORD Value: (The password you created in Step 1)

4. Enable Workflow Permissions
You must allow the built-in GITHUB_TOKEN to create releases.

In your repository Settings, go to Actions > General.

Scroll to Workflow permissions.

Select Read and write permissions.

Click Save.

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.

1 participant