diff --git a/.github/workflows/google-form.yml b/.github/workflows/google-form-news.yml similarity index 98% rename from .github/workflows/google-form.yml rename to .github/workflows/google-form-news.yml index 255bf24d0825c3..5a07305e3581ff 100644 --- a/.github/workflows/google-form.yml +++ b/.github/workflows/google-form-news.yml @@ -1,4 +1,4 @@ -name: "[Cron] Update news and recordings from Google Form" +name: "[Cron] Update news from Google Form" on: workflow_dispatch: schedule: diff --git a/.github/workflows/google-form-recordings.yml b/.github/workflows/google-form-recordings.yml new file mode 100644 index 00000000000000..d29064b011ff12 --- /dev/null +++ b/.github/workflows/google-form-recordings.yml @@ -0,0 +1,74 @@ +name: "[Cron] Update recordings from Google Form" +on: + workflow_dispatch: + schedule: + - cron: '42 10 * * *' +jobs: + runner-job: + runs-on: ubuntu-latest + # Only run on main repo on and PRs that match the main repo. + if: | + github.repository == 'galaxyproject/training-material' && + (github.event_name != 'pull_request' || + github.event.pull_request.head.repo.full_name == github.repository) + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 1 + + # BEGIN Dependencies + - uses: ruby/setup-ruby@v1 + with: + ruby-version: "3.2" + - uses: actions/cache@v4 + with: + path: | + vendor/bundle + key: ${{ runner.os }}-gems-${{ hashFiles('**/Gemfile.lock') }} + restore-keys: | + ${{ runner.os }}-gems- + - name: Install dependencies + run: | + gem install bundler + bundle config path vendor/bundle + bundle install --jobs 4 --retry 3 + bundle pristine ffi + # END Dependencies + + - name: Update recordings from Google Form + id: recordings + run: | + echo "new_recordings=$(bundle exec ruby bin/google-form-recordings.rb)" >> $GITHUB_OUTPUT + + - name: Create Pull Request for Recordings + # If it's not a Pull Request then commit any changes as a new PR. + if: | + github.event_name != 'pull_request' && + steps.generate.outputs.new_recordings == 'true' + uses: peter-evans/create-pull-request@v3 + with: + title: "[Google Form] New Recording Submission!" + branch-suffix: timestamp + commit-message: add new recording from Google Form submission + add-paths: topics/ + committer: "Saskia Hiltemann " + author: "Saskia Hiltemann " + body: | + New recording submitted! + + **Submission Process checklist** + - [x] **Instructor** Record video + - [x] **Instructor** Submit video via form + - [x] **GTN** Pull request made by bot + - [ ] **GTN** Check if adjustments to PR are necessary + - [ ] Check [Submissions Form](https://docs.google.com/spreadsheets/d/1iXjLlMEH5QMAMyUMHi1c_Lb7OiJhL_9hgJrtAsBoZ-Y/edit?usp=sharing) + - [ ] New contributors need to be added? + - [ ] **GTN** Upload video to [GalaxyProject YouTube](https://www.youtube.com/c/galaxyproject) + - [ ] **GTN** Add youtube video id to PR after upload + - [ ] **GTN** Put Autogenerated captions in Google Doc ([folder](https://drive.google.com/drive/folders/1liyqDQDbxMNXvpQIaqFmoE2fB2aJIH9N?usp=drive_link)) + - [ ] **Instructor** Fix autogenerated captions, comment here when done + - [ ] **GTN** Upload fixed captions to YouTube + - [ ] **GTN** Add the people who did the captioning to this PR + - [ ] **GTN** Merge PR! + + diff --git a/bin/google-form-recordings.rb b/bin/google-form-recordings.rb index 72bb0d320f52d0..6874393076613e 100755 --- a/bin/google-form-recordings.rb +++ b/bin/google-form-recordings.rb @@ -91,4 +91,5 @@ end +STDERR.puts "new recordings: #{new_recordings}" puts new_recordings