Set Next Meetup #6
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Set Next Meetup | |
| on: | |
| workflow_dispatch: | |
| inputs: | |
| meetup_link: | |
| description: 'Meetup event URL (e.g. https://www.meetup.com/python-catania/events/123456789/)' | |
| required: true | |
| type: string | |
| permissions: | |
| contents: write | |
| actions: write | |
| id-token: write | |
| jobs: | |
| set-next-meetup: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Install ImageMagick | |
| run: sudo apt-get update && sudo apt-get install -y imagemagick | |
| - name: Run set-next-meetup skill | |
| uses: anomalyco/opencode/github@latest | |
| env: | |
| OPENCODE_ZEN_API_KEY: ${{ secrets.OPENCODE_ZEN_API_KEY }} | |
| with: | |
| model: opencode/big-pickle | |
| prompt: | | |
| Fetch the event page at ${{ inputs.meetup_link }} and extract the title, date, and start time. | |
| Then download the event cover image (use highres version from og:image meta tag), | |
| convert it to public/images/homepage/NextMeetup.jpg at quality 90, note the dimensions. | |
| Build localized date strings: | |
| - Italian: e.g. "Martedì 14 luglio 2026, ore 18:30" | |
| - English: e.g. "Tuesday, 14 July 2026, 6:30 PM" | |
| Update src/app/components/meetup/meetup.component.html with the event image, | |
| title as alt, the WIDTH/HEIGHT from identify, the date paragraph, and the event link. | |
| Add the "date" key to the nextMeetup object in public/i18n/it.json and | |
| public/i18n/en.json. Follow the exact HTML/JSON structure from these existing files. | |
| - name: Commit and push changes | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| git config user.name "github-actions[bot]" | |
| git config user.email "github-actions[bot]@users.noreply.github.com" | |
| if [ -n "$(git status --porcelain)" ]; then | |
| git add -A | |
| git commit -m "chore: set next meetup event" | |
| git push "https://x-access-token:${GITHUB_TOKEN}@github.com/${GITHUB_REPOSITORY}.git" "HEAD:${GITHUB_REF_NAME}" | |
| gh workflow run deploy.yml --ref "${GITHUB_REF_NAME}" -f sha="$(git rev-parse HEAD)" | |
| else | |
| echo "No changes to commit" | |
| fi |