Skip to content

Github Actions - Export Kotlin Files #33

Github Actions - Export Kotlin Files

Github Actions - Export Kotlin Files #33

Workflow file for this run

name: Generate Kotlin
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
workflow_dispatch:
jobs:
generate-kotlin:
runs-on: ubuntu-latest
steps:
- name: Checkout repo
uses: actions/checkout@v4
- name: List directory structure before building
run: ls -R
- name: Generate Protos
run: ./gradlew generateProtos
- name: List directory structure after building
run: ls -R
- name: List generated Kotlin files for debugging
run: ls -R lib/build/generated/source/wire/ || echo "Directory not found"
- name: Upload generated Kotlin files
uses: actions/upload-artifact@v4
with:
name: generated-kotlin-files
path: lib/build/generated/source/wire/**/*.kt
- name: Checkout target repo
uses: actions/checkout@v4
with:
repository: 'ksharma-xyz/Kotlin-Proto'
token: ${{ secrets.TOKEN }}
- name: Download artifact
uses: actions/download-artifact@v4
with:
name: generated-kotlin-files
path: ./generated
- name: List downloaded files
run: ls -R ./generated
- name: Configure Git
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git config --global init.defaultBranch main
- name: Create a new branch
run: git checkout -b kotlin
- name: Copy generated files to target repo
run: |
mkdir -p lib/build/generated/source/wire
cp -r ./generated/* lib/build/generated/source/wire/
ls -R lib/build/generated/source/wire/ || echo "Copy failed"
- name: Create Commit
run: |
git add .
git commit -m "Add generated Kotlin files from main project"
- name: Push changes to target repo
run: git push origin kotlin
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
with:
token: ${{ secrets.TOKEN }}
commit-message: "Add generated Kotlin files from ksharma-xyz/Proto-API"
branch: kotlin
title: "Add generated Kotlin files from main project"
body: "This PR adds the generated Kotlin files from the main project."
base: main