51 lines
2.3 KiB
Markdown
51 lines
2.3 KiB
Markdown
# Deploy Android
|
|
|
|
## Versión actual
|
|
|
|
- Base actual: `1.2.34`
|
|
- Fuente de verdad: [VERSION](/home/mgonzalez/desarrollo/react/linkedsign/VERSION)
|
|
- Historial de cambios: [CHANGELOG.md](/home/mgonzalez/desarrollo/react/linkedsign/CHANGELOG.md)
|
|
|
|
## Pasos
|
|
|
|
1. Haz los cambios en `dev`.
|
|
2. Si corresponde, sube versión:
|
|
- `./scripts/set-version.sh X.Y.Z`
|
|
- actualiza `CHANGELOG.md`
|
|
- confirma que `android/app/build.gradle` refleje el nuevo `versionName` y `versionCode`
|
|
3. Prueba la app:
|
|
- `source /etc/profile.d/android-sdk.sh`
|
|
- `cd android`
|
|
- `GRADLE_USER_HOME=/home/mgonzalez/desarrollo/react/linkedsign/android/.gradle-home ./gradlew assembleDebug`
|
|
4. Si todo está bien, genera release:
|
|
- `GRADLE_USER_HOME=/home/mgonzalez/desarrollo/react/linkedsign/android/.gradle-home ./gradlew assembleRelease`
|
|
5. Copia el APK release:
|
|
- `cp android/app/build/outputs/apk/release/app-release.apk android/apk/LinkedSign-release.apk`
|
|
6. Guarda cambios en git:
|
|
- `git add .`
|
|
- `git commit -m "mensaje"`
|
|
7. Sube a Gitea:
|
|
- `git push origin main`
|
|
8. Sube el APK a producción:
|
|
- `ssh deploy@192.168.222.3 -p 2203 'mkdir -p /opt/apps/linkedsign/android/apk'`
|
|
- `scp -P 2203 android/apk/LinkedSign-release.apk deploy@192.168.222.3:/opt/apps/linkedsign/android/apk/`
|
|
9. Limpia archivos `.md` en producción:
|
|
- `find /opt/apps/linkedsign -type f -iname '*.md' -delete`
|
|
10. Verifica descarga pública:
|
|
- `https://sign.linkedcorp.net/api/downloads/android-apk`
|
|
|
|
## Notas
|
|
|
|
- La `keystore` de producción está fuera de git.
|
|
- No pierdas la `keystore` ni las contraseñas.
|
|
- Si cambias algo visual de la app, no hace falta tocar la web.
|
|
- Si cambias el contrato del API, prueba login, documentos y firma antes de subir release.
|
|
- En producción no debe quedar `android/` fuente; solo `/opt/apps/linkedsign/android/apk/LinkedSign-release.apk`.
|
|
- En cada paso a producción Android se publica únicamente el `APK release`; no se sube el código fuente Android.
|
|
- El `APK release` que se publique debe corresponder a una versión nueva y anotada en `VERSION` y `CHANGELOG.md`.
|
|
- El paso Android no debe tocar ni reemplazar:
|
|
- `/opt/apps/linkedsign/backend/.env`
|
|
- `/opt/apps/linkedsign/storage/`
|
|
- `/opt/apps/linkedsign/logs/`
|
|
- configuración runtime hardened ya existente en producción
|