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

More detailed setup documents with less assumptions on users #359

Merged
merged 19 commits into from
Oct 22, 2020
Merged

More detailed setup documents with less assumptions on users #359

merged 19 commits into from
Oct 22, 2020

Conversation

rfan-debug
Copy link
Contributor

@rfan-debug rfan-debug commented Oct 16, 2020

  • Provide a more detailed setup-documents.
  • Hand-tested this document on a clean Ubuntu system without go, npm, nodejs.
  • More instructions on running tests.

Copy link
Contributor

@salemhilal salemhilal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey, this is a really solid start. I left a few comments, but in general:

  • I'd like to keep the quick start guide as brief as is reasonable.
  • I think it makes sense to use the default-config.json as an example config instead of adding another config to the repo.

README.md Outdated
1. Use the Go tools to install Hound. The binaries `houndd` (server) and `hound` (cli) will be installed in your $GOPATH.

```
go get github.com/hound-search/hound/cmds/...
```

2. Create a [config.json](config-example.json) in a directory with your list of repositories.
2. Create a [simple-config-example.json](config-examples/simple-config-example.json) in your local file directory. For simplicity, we just showed
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think that the quick start guide for the most part should be kept relatively brief. The config-example.json documents the variety of ways to set up a repo in lieu of more explicit documentation. Since we don't really know what sort of repo people want to track, it's probably a good idea to not make a ton of assumptions.

Instead, it might be helpful to use the default-config.json that's included in the root of the repo:

Create a config.json file and use it to list your repositories. Check out our example config.json to see how to set up various types of repositories. For example, we can configure Hound to search its own source code using the config found in default-config.json:

{
  "dbpath" : "db",
  "repos" : {
    "Hound" : { "url" : "https://github.com/etsy/hound.git" }
  }
}

Copy link
Contributor Author

@rfan-debug rfan-debug Oct 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see. thank you! I did not notice there was a simplified default-config.json earlier

README.md Outdated

## Quick Start Guide

### Using Go Tools

0. [Install the Go tools](https://golang.org/doc/install) if you don't have it.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We could probably make this a bit terser:

  1. Install Go if you don't have it already. Hound requires version 1.4 or later. You might also want to define a GOPATH environment variable) (it defaults to $HOME/go if you don't explicitly have one set). If everything is installed properly, go version will print out the installed version of go.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for your suggestion. Updated.

README.md Outdated

3. Run the Hound server with `houndd` and you should see output similar to:
3. Run the Hound server with `houndd -addr=localhost:6880 -conf <your config.json file>` and you should see output similar to:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I'd also omit the arguments to houndd, although I would mention that it needs to be run from the same directory that the config file is in.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure. i can remove that.

README.md Outdated
```
2015/03/13 09:07:42 Searcher started for statsd
2015/03/13 09:07:42 Searcher started for Hound
2015/03/13 09:07:42 All indexes built!
2015/03/13 09:07:42 running server at http://localhost:6080
```

4. Open your browser at `http://localhost:6880`, you should be able to search the tensorflow repo rapidly like the following.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To clean things up a bit:

  1. By default, hound hosts a web ui at http://localhost:6080 . Open it in your browser, and start searching.

I don't necessarily think we need another screenshot of the UI here since we include that gif at the top of the README.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done. Removed.

README.md Outdated
1. Create a [config.json](config-example.json) in a directory with your list of repositories.
0. [Install the docker](https://docs.docker.com/get-docker/) if you don't have it.

1. Create a [simple-config-example.json](config-examples/simple-config-example.json) in your local file directory. For simplicity, we just showed
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same comment here as above.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated.

README.md Outdated Show resolved Hide resolved
},
"repos" : {
"LocalFolder" : {
"url" : "file:////home/rfan/tensorflow"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I mentioned this above, but I think default-config.json does the job of providing a simple config example. It also uses Hound's own source code on Github, so we know it'll work out of the box for most people. I believe it's used in our Dockerfile, so it might make sense to leave it (as well as the example config) in the root of the repository for now.

Copy link
Contributor Author

@rfan-debug rfan-debug Oct 18, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I will remove this configuration file and use the original example config.

@rfan-debug rfan-debug changed the title Setup-up document branch More detailed setup documents with less assumptions on users Oct 18, 2020
@rfan-debug rfan-debug marked this pull request as ready for review October 18, 2020 03:13
Copy link
Contributor

@salemhilal salemhilal left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Three minor tweaks, but this looks good to me otherwise.

README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
README.md Outdated Show resolved Hide resolved
@salemhilal
Copy link
Contributor

@rfan-debug I applied my suggestions to this branch. If you're ok with them, I'll squash and merge this branch into master.

@rfan-debug
Copy link
Contributor Author

@salemhilal Please do! Thanks!

@rfan-debug
Copy link
Contributor Author

@salemhilal i resolved the merge conflicts.

@salemhilal salemhilal merged commit 57d568c into hound-search:master Oct 22, 2020
@rfan-debug rfan-debug deleted the rfan-setup-guide branch October 23, 2020 22:16
AlexFielder added a commit to AlexFielder/hound that referenced this pull request Jul 28, 2021
* Update config-example.json

* Add CONTRIBUTING.md file

* Dockerfile should use github.com/hound-search

This fixing the docker build issue.

* make listen URL clickable in iTerm (hound-search#340)

* Add Jest tests and Prettier support (hound-search#343)

This commit adds support for Jest and writes a few simple tests as
proof. Adding a test is as easy as adding a file that ends in
`.test.js` next to the file you want to test. Any file that matches that
pattern should have access to Jest functions. The whole test suite can
be run with `npm run test`.

I also added support for Prettier. Running `npm run format`
should run Prettier on any staged changes. I thought about adding Husky
to automatically run Prettier as a pre-commit hook, but it seems as
though Husky requires git v2.13 which would require me upgrading Git.

I didn't add support for ESLint yet since I figured that may be a
slightly more involved conversation — Prettier seems to be generally
uncontroverical and is generally only slightly configurable, whereas
ESlint is highly configurable and behaves however we want it to.

* Git VCS driver: Support non-default target refs (hound-search#345)

Currently, only the default ref (`master`) is supported.

- Allow target non-default target refs to be specified via configs.
- Add config-driven target ref auto-detection using the `HEAD` branch.
- Update default repo base URL pattern to link to the content revision,
  accounting for potential non-default target ref usage.
- Add global-level VCS configs which are merged into the repo-level configs
  during startup (repo-level vals take precedence).

* Exclude file path (hound-search#347)

* index: add a search option to exclude files given a regexp

* api: add the excludeFiles query parameter

Set the index search options ExcludeFileRegexp with this parameter
to allow excluding files from the search via a regexp.

* js: add the excludeFiles search parameter

* css: increase the label width to fit 'Exclude file path'

* js: correctly check that advanced is empty

* Update README with contact info for maintainers. (hound-search#348)

I don't think there's a clear way to see who has push privs to this repo from the public, and even if there is, the "Get In Touch" section should probably list the maintainers.

* incorporate detailing around gopath in README's quick start instructions (hound-search#352)

Co-authored-by: Rebecca Lau <[email protected]>

* pin alpine version to make the docker pass

* Update Dockerfile

* More detailed setup documents with less assumptions on users (hound-search#359)

This commit updates the readme to be a little more verbose for people who don't necessarily have Go or Docker set up, but who want to contribute nonetheless. 

* Apply the old patch

* add  some figures

* remove the idea code

* get it untitled

* remove

* add .idea dev tools

* remove simple config

* get config back

* detailing tests and simplifying the setup

* Commit TLS support guide

Co-authored-by: Salem <[email protected]>

* make the statement terser

* delete unused img

* rewording

* back to the old path

* Update README.md

* Update README.md

* Update README.md

* Update README.md

Co-authored-by: Salem <[email protected]>

* Initialize Go Modules

`go mod init github.com/hound-search/hound`

* Replace jteeuwen/go-bindata with go-bindata/go-bindata

The former package is unmainatained since a while and the replacement
also fixes this bug I encountered when trying to build the package:
jteeuwen/discussions#6

* update Go version requirement in README file

* Add a -version flag to Houndd (hound-search#362)

This commit adds a `-version` flag to houndd. Running `houndd -version` prints the current version and exits.

Co-authored-by: Kartikay Shandil <[email protected]>

* Add padding between advanced mode text inputs

* add margin bottom to fields that are not last

* update front end bundles

Co-authored-by: Blobb Ered <@blobbered>

* Setup Github Actions CI (hound-search#354)

* Setup Github Actions CI

Replaces Travis CI with Github Actions for better integration.
Jobs are run against more recent Go versions, namely 1.12 to 1.14 .
 .
For further documentation see

- https://github.com/actions/setup-go
- and https://help.github.com/en/actions

This adds `-race` flag to the Go tests and will run a meta linter
(golangci-lint).

* keep travis in until github workflows is tested

* tidy go mods

* remove lint command from github workflow

* add back go-bindata to go modules list

* up version of actions checkout to fix deprecation errors

* return go bindata to the go.sum file as well

Co-authored-by: Andreas Linz <[email protected]>

* Add a github actions badge

Thanks again @klingtnet and @blobbered for making this possible!

* Update README.md (hound-search#369)

Add clarification of using file:// protocol for accessing locally pulled repos

* Added new folder docs with config-options description on options. (hound-search#370)

* Added new folder docs with config-options description on options.

* Peer review comment update
updated formatting for config options documentation and added link
in readme.

* readme link update

* link update

* Minor edits from code review

Co-authored-by: kayyapil <[email protected]>
Co-authored-by: ehrktia <[email protected]>
Co-authored-by: Salem <[email protected]>

* Test windows

* Run Go build and test on Ubuntu Linux and Windows

* Add lint

* Install dependencies in Dockerfile

* Fix typo

* Adding a tip for windows users (hound-search#379)

* Adding a tip for windows users

* Update README.md

Co-authored-by: Salem <[email protected]>

Co-authored-by: Salem <[email protected]>

* Use tini as default entry point (hound-search#376)

* Add a warning for the default branch rename (hound-search#380)

* Add a warning for the default branch rename

* Add a link to Github's renaming documentation.

* Update README to reflect branch rename. (hound-search#384)

* Update version in main.go

* support github webhook

* Omit ports in constructed URL (hound-search#383)

* Improve accessibility (hound-search#398)

* Resolve WCAG2AA.Principle3.Guideline3_1.3_1_1.H57.2

* Resolve WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.InputText.Name

* Resolve WCAG2AA.Principle4.Guideline4_1.4_1_2.H91.Button.Name

* Improve stats contrast

* Improve advanced text contrast

* Improve repo title contrast

* Improve contrast in advanced section

* Improve line number contrast

* Improve excluded files contrast

* Improve "load all" button contrast

* Automatically build docker image and publish to ghcr.io (hound-search#401)

* Feat: Use goreleaser

* Feat: Add docker build, remove goreleaser

* Fix: Add image name

* Feat: Use ghcr.io and build-push-action@2

* We try again

* Trying yet again

* Fix: Use actor and GITHUB_TOKEN

* Fix: Use github.actor in image tag path

* Fix: use github.repository_owner instead of github.actor

When you have an organisation, github.actor != github.repository_owner

Co-authored-by: Jone Marius Vignes <[email protected]>

* Update default-config.json (hound-search#391)

* Update default-config.json

* Update default-config.json (ref: main)

* Add hyperlinks to repository root (hound-search#396)

* Add literal search option (hound-search#397)

* Add literal search option

* Pull EscapeRegExp into common.js

* Add db/ to Jest ignore patterns

* Test EscapeRegExp() matches its input

* Test vacuous EscapeRegExp

* Give repo links a target of blank (hound-search#404)

Add rel="noopener noreferrer" to _blank links

Co-authored-by: Joseph Price <[email protected]>
Co-authored-by: dschott <[email protected]>
Co-authored-by: Nicolas R <[email protected]>
Co-authored-by: Igor <[email protected]>
Co-authored-by: Salem <[email protected]>
Co-authored-by: Richard Liang <[email protected]>
Co-authored-by: Vincent Rischmann <[email protected]>
Co-authored-by: Blobb Ered <[email protected]>
Co-authored-by: Rebecca Lau <[email protected]>
Co-authored-by: Ruixi Fan <[email protected]>
Co-authored-by: Ruixi Fan <[email protected]>
Co-authored-by: Andreas Linz <[email protected]>
Co-authored-by: Rebecca Lau <[email protected]>
Co-authored-by: Kartikay Shandil <[email protected]>
Co-authored-by: Kartikay Shandil <[email protected]>
Co-authored-by: Ashley Roach <[email protected]>
Co-authored-by: karthick <[email protected]>
Co-authored-by: kayyapil <[email protected]>
Co-authored-by: ehrktia <[email protected]>
Co-authored-by: David Kolossa <[email protected]>
Co-authored-by: Sandro <[email protected]>
Co-authored-by: Andrew Stanton <[email protected]>
Co-authored-by: David Schott <[email protected]>
Co-authored-by: Cor Bosman <[email protected]>
Co-authored-by: Jacob Rose <[email protected]>
Co-authored-by: Alexander Chiu <[email protected]>
Co-authored-by: Joel Armstrong <[email protected]>
Co-authored-by: Jone Marius Vignes <[email protected]>
Co-authored-by: Jone Marius Vignes <[email protected]>
Co-authored-by: Simon Legner <[email protected]>
Co-authored-by: Bucky Schwarz <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants