gosopagex is a tool that allows content maintainers to do expose html content to the Apache Solr search platform.
More specifically, gosopagex is microservice written in Go that maintains html files in a desired solr-friendly format and exposes them RESTful interface. It is operates on the principles of KISS and is best integrated in a JAMstack.
Before you begin, ensure you have met the following requirements:
- You have installed the latest version of
go1.16.5
- You have a
Linux/Mac OS
machine with working knowledge of the underlying filesystem and Go build process.
If you want to try out on your local machine, you can simply install gosopagex system-wide with the following command:
$ ❯ go install -v ./...
Alternatively, you can build a binary and run that one with a configurable shell script. See how to build stapagen with the Makefile further down below (#Makefile).
To run gosopagex, follow these steps:
$ ❯ sopagex
If you have build stapagen with the Makefile, you can simply adjust the parameters in the shell script stapagen.sh
and
then launch the script.
$ ❯ ./sopagex.sh
This method is preferable as you're more flexible and don't have to retype the binary arguments everytime.
Once gosopagex is running, it does clone the git repository, converts its markdown files to html pages and forwards them
over a RESTful api. That api can be accessed over locally if the executable was run on your local
machine (http://localhost:8080
) or over a K8s service definition.
There is a Makefile which automates the building process of the stapagen application. The Makefile has 6 build targets: test, vet, fmt, mod, build, run, install and all. It can simply be run as such:
$ ❯ make build
There is also a Dockerfile by which one can containerize the stapagen application. The port that is being exposed is the default 8080.
{coming soon}
To contribute to gosopagex, follow these steps:
- Fork this repository.
- Create a branch:
git checkout -b <branch_name>
. - Make your changes and commit them:
git commit -m '<commit_message>'
- Push to the original branch:
git push origin <project_name>/<location>
- Create the pull request.
Alternatively see the GitHub documentation on creating a pull request .
Thanks to the following people who have contributed to this project:
- @raffaelschneider 💻📖🐛
- @stefanwelsch 💻🧑🏫
- @tomtrapp 🤔👀
- @rickyelfner 💬🐛
You might want to consider using something like the All Contributors specification and its emoji key.
If you want to contact me you can reach me at info@b-nova.com.
This project uses the following license: MIT License