Skip to content
New issue

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

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

Already on GitHub? # to your account

How does this compare to newrelic/wiki-sync-action? #4

Closed
jcbhmr opened this issue Feb 25, 2023 · 7 comments
Closed

How does this compare to newrelic/wiki-sync-action? #4

jcbhmr opened this issue Feb 25, 2023 · 7 comments

Comments

@jcbhmr
Copy link
Contributor

jcbhmr commented Feb 25, 2023

Context: I have been "shopping" for a wiki sync action to use in my repos.

Adding a comparison section to the readme might be something to consider. I just know I was curious about the differences between this repo and other wiki sync actions that exist. This one is pretty up-to-date in comparison to all the others! Most haven't been updated in like 2 years.

Your primary competitor seems to be https://github.com/newrelic/wiki-sync-action. Most of the others appear abandoned.

Here's a non-exhaustive list of the other options:

@spenserblack
Copy link
Owner

Wow, thanks for all this research!

The first thing that sticks out to me is that wiki-sync-action is a Docker action, which means that it can't be run in Windows actions (runs-on: windows-latest) AFAIK. Please correct me if I'm wrong about this 🙂
I'll try to keep support for jobs that run on Ubuntu, MacOS, and Windows, which means I'll limit this to either being a composite action (as it is currently), or a Node.js action.

The next thing I notice is that it looks like wiki-sync-action performs a diff to know if it should commit changes or not. Currently, this action naively attempts to always commit changes when it's run. I wrote this with the assumption that the workflow would be set up to avoid runs without changes (e.g. paths: [ '.github/wiki/*' ]). I'm open to adding this check, but I don't have a need for it myself.

Finally, wiki-sync-action is bi-directional. It looks like, if the wiki is edited, those changes can pulled down and cloned to the repo. I wrote this action for o2sh/onefetch#925, and didn't consider a bi-directional sync. My single goal was to expose the wiki to PRs, so that people who aren't collaborators can contribute to the wiki and go through a review process. Bad things can happen when the wiki is directly editable by everyone 😆 I don't really have any plans to make this bi-directional.

@spenserblack
Copy link
Owner

I'll accept a PR to add this comparison if you want to make one. I think we just need to compare with the most popular ones. The comparison could link to this issue for more context.

@jcbhmr
Copy link
Contributor Author

jcbhmr commented Feb 25, 2023

Sounds good! 👍 I'll do just that.

@jcbhmr
Copy link
Contributor Author

jcbhmr commented Feb 26, 2023

Thanks for answering my question. Closing this issue since it has been answered. Progress to adding the alternatives section to the readme can be found in #6.

@jcbhmr jcbhmr closed this as completed Feb 26, 2023
@jcbhmr
Copy link
Contributor Author

jcbhmr commented Mar 9, 2023

I'll try to keep support for jobs that run on Ubuntu, MacOS, and Windows, which means I'll limit this to either being a composite action (as it is currently), or a Node.js action.

I just investigated this today, and I think you can use Bash on Windows (with Git bash):

image

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell at least I assume that these same options are available for composite actions...

Just thought I'd put this here for posterity and future me.

@jcbhmr
Copy link
Contributor Author

jcbhmr commented Mar 9, 2023

Turns out it's the same list for the composite action.yml file:
image
https://docs.github.com/en/actions/creating-actions/metadata-syntax-for-github-actions#runsstepsshell

@spenserblack
Copy link
Owner

Thanks for the research!

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants