Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automate issuing of badges for completion of tour #118

Open
Relequestual opened this issue Dec 9, 2024 · 7 comments
Open

Automate issuing of badges for completion of tour #118

Relequestual opened this issue Dec 9, 2024 · 7 comments
Assignees
Labels
✨ Enhancement New feature or request Priority: High After critical issues are fixed, these should be dealt with before any further issues.

Comments

@Relequestual
Copy link
Member

Firstly, the tour is awesome. Great work to all those involved. Thank you!

While we have been manually issuing certificates, this does not scale, and should be automated.

A while back while I was full time on JSON Schema, I looked for a good solution for providing attestable badges. The only good free solution I could find is https://badgr.com.
We created an account and an issuer identity for JSON Schema.

Currently, on completion of the tour, we capture the users name and email.
This goes into a google sheet.

We could automate the issuing of badges in multiple ways.
I was going to suggest using GitHub Actions workflow scheduled events, but there is a limit in that they will not continue to trigger if the repo has no update for 60 days.
My suggestion is to use Cloudflare Workers. We will very likely not hit the free limits.

Investigation work needs to be done to find out if this is feasable or if any limitaitons going to cause issues.

Proposed solution:

  • Completion of the tour results in capture of name and email, saved into google sheet. (currently exists and working).
  • Scheduled Cloudflare Worker checks daily if any new competions are logged and require badge issuing. If any, take first and issue badge.

Considerations:

  • Scheduled task will need to also span another pre-task to remove duplicates. If duplicates are found, remove ones which are not sent first.
  • New column for "badge issued" in the spreadsheet.
  • Cloudflare has specific considerations for cron triggers.
  • Needs error handling. Errors should be reported to Slack channel. Not sure how difficult this will be.
  • Secrets should remain secret!
  • Everything must be checked into the git repo.

Approach:

Feel free to break these down into smaller Issues.
Please ask questions if anything is unclear (and notify me on Github if I don't reply within 2 days 😅)

@Relequestual Relequestual added Priority: Medium This issue may be useful, and needs some attention. ✨ Enhancement New feature or request Priority: High After critical issues are fixed, these should be dealt with before any further issues. and removed Priority: Medium This issue may be useful, and needs some attention. labels Dec 9, 2024
@pavanydg
Copy link
Contributor

pavanydg commented Dec 9, 2024

@Relequestual I would like to work on this.

@JeelRajodiya
Copy link
Member

@pavanydg The issue was discussed with @aialok in slack (message link), so we are assigning this to him. Thank you

@aialok
Copy link
Member

aialok commented Dec 10, 2024

Please assign this to me.

Thanks.

@pavanydg
Copy link
Contributor

Yeah sure no worries.

@AQIB-NAWAB
Copy link
Contributor

Hi @pavanydg , are you still working on this issue ??
@JeelRajodiya can i also work on this issue ?
Thanks

@JeelRajodiya
Copy link
Member

@AQIB-NAWAB, I think @aialok is currently working on this issue.

@AQIB-NAWAB
Copy link
Contributor

okk got it , Thanks for clarification

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
✨ Enhancement New feature or request Priority: High After critical issues are fixed, these should be dealt with before any further issues.
Projects
None yet
Development

No branches or pull requests

5 participants