Comments (13)
Hey, I just wrote an action: https://github.com/mickare/cargo-spellcheck-action
I'm not an expert with Github Actions, and I'm sure this can be improved. When a Dockerfile is used, Github Actions seem to rebuild on each run the Docker Image; which takes ~ 8m to complete for cargo-spellcheck. A pre-build image on hub.docker.com reduced it down to 40s.
So I propose that this project adds an "official" Dockerfile / Docker Image.
from cargo-spellcheck.
To make it viable for CI, I think this has a soft dependency on #12 and #10 - otherwise a lot of topic lingo would show up which certainly will cause some friction.
Do you have any resource links how to write a github resource?
from cargo-spellcheck.
The relevant documentation for creating a docker based github action https://docs.github.com/en/actions/creating-actions/creating-a-docker-container-action
from cargo-spellcheck.
I am a big fan of mono-repos. It avoids a lot of chores with synchronization.
The above issue would indeed make sense for the sake of the github action.
Let me think about this.
from cargo-spellcheck.
@EdJoPaTo could you open a new issue outlining if there are any changes required?
from cargo-spellcheck.
Unfortunately, I don't have experience with writing github actions.
#10 doesn't look like a blocker to me, but #12 does.
By the way, currently I'm using cspell on CI, but I would prefer to use a Rust tool. Additionally, using cargo spellcheck
locally is definitely more convenient.
from cargo-spellcheck.
@mickare Would you be ok if I integrate your repo as a sub dir? Could you create a PR with a subdir "ci/github-action" with the content of your repository?
Very very much appreciated!
from cargo-spellcheck.
@drahnr Ok, let me try. But a quick remark: It seems like Github Actions must be defined in the top level of a repository via the file action.yml
.
https://docs.github.com/en/actions/creating-actions/publishing-actions-in-github-marketplace#about-publishing-actions
The action's metadata file (action.yml or action.yaml) must be in the root directory of the repository.
from cargo-spellcheck.
Then let's do that.
from cargo-spellcheck.
Maybe it is better to form a GitHub organization around cargo-spellcheck
and have the GitHub Action as its own repo within the org?
from cargo-spellcheck.
I found a good example for a single repository action: https://github.com/github/super-linter
On the downside, it means that each time a new tag/release is created, the Docker version must be updated manually
(until someday Github adds a feature).
On the other hand an extra Github Action git repository could be automatically updated by a workflow script in this repo. Triggered by a new release, it could update the version of the Docker Image in the action.yml
and then tag it accordingly.
Although I don't favor this one, it seems to be the Docker-way of doing things.
I have a last idea which is a mono-repo solution. But I have to check it first.
from cargo-spellcheck.
I found a good example for a single repository action: https://github.com/github/super-linter
On the downside, it means that each time a new tag/release is created, the Docker version must be updated manually
(until someday Github adds a feature).On the other hand an extra Github Action git repository could be automatically updated by a workflow script in this repo. Triggered by a new release, it could update the version of the Docker Image in the
action.yml
and then tag it accordingly.
Although I don't favor this one, it seems to be the Docker-way of doing things.I have a last idea which is a mono-repo solution. But I have to check it first.
I have existing CI infrastructure, so anything is possible that involves input from gh and output to a container registry.
from cargo-spellcheck.
It might be a good idea to support cargo-binstall then everything and everyone like users, CI and so on with cargo-binstall can just install cargo-spellcheck. No custom github action for every tool needed, just common ones for cargo-binstall which then install the tooling.
from cargo-spellcheck.
Related Issues (20)
- Spurious "Unexpected item made it into the items" warnings HOT 4
- Word "C++" is tokenized incorrectly and can not be whitelisted HOT 3
- Handle mdbook `book.toml`
- reflow sub command transposes `//` and leading space HOT 7
- Panic hunspell returned non-utf8 sequence HOT 7
- hunspell stumbles over copyright symbol HOT 5
- Broader CI/Docker usage support HOT 6
- How to ignore files HOT 7
- Build failure due to clang HOT 6
- How to add words? HOT 2
- Is there way to skip over doc links in comments? HOT 2
- Interactive fixing seems buggy HOT 3
- Support cargo-binstall HOT 9
- Reduce release artefact download size HOT 2
- Spellcheck doesn't list files when edition is inherited HOT 3
- Adding a footnote gives false positives HOT 2
- Is there a way to ignore commented out code? HOT 2
- Help identifying panic: `assertion failed: plain_range.start <= plain_range.end` HOT 15
- Non determinism with hunspell backend HOT 1
- Installing the crate in a macbook machine HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cargo-spellcheck.