-
Notifications
You must be signed in to change notification settings - Fork 8k
Moving most of mixer/doc/dev/development.md here #352
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
Conversation
https://github.com/istio/mixer/blob/master/doc/dev/development.md to here with updates to make it a bit more generic than just mixer
devel/README.md
Outdated
|
||
Other docs you should look at: | ||
|
||
- Each components additional development docs like [Mixer](https://github.com/istio/mixer/tree/master/doc/dev/development.md)'s |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How about providing an exhaustive list here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well not every components has a specific dev guide and the list should be on
https://github.com/istio/istio/blob/master/README.md#repositories (though broker isn't...)
devel/README.md
Outdated
|
||
## Prerequisites | ||
|
||
Istio components code bases has only few external dependencies you |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Istio components only have a few external dependencies
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅
devel/README.md
Outdated
|
||
### Setting up Go | ||
|
||
Mixer for instance is written in the [Go](http://golang.org) programming language. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's generalize this.
"Many Istio components are written in..."
And let's just claim everything depends on Go 1.8. We'll do full org-wide upgrades when time comes.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅
devel/README.md
Outdated
|
||
### Setting up Bazel | ||
|
||
Istio components are built using the bazel build system. See |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
bazel -> Bazel
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅
devel/README.md
Outdated
Please follow [these instructions](https://docs.docker.com/engine/installation/) | ||
for how to do this for your platform. | ||
|
||
### Setting up personal access token |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Setting up a personal
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ you reviewed the original ;-)
devel/README.md
Outdated
### Setting up personal access token | ||
|
||
This is only necessary for core contributors / to push changes to the main repos. | ||
You can make Pull Requests without it but the additional security is recommended for everyone. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Requests -> pull requests
without it -> without using an access token
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
✅ with a small change (two-factor authentication instead of access token)
devel/README.md
Outdated
|
||
To be part of the Istio organization, we require two-factor authentication, and | ||
you must setup a personal access token to enable push via HTTPS. Please follow [these | ||
instructions](https://help.github.com/articles/creating-a-personal-access-token-for-the-command-line/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think markdown likes to split the link in two lines.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
you can't split the url but you can split the text of the link (it works, also not changed from earlier doc)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it works
```shell | ||
bazel test ... | ||
``` | ||
### Getting coverage numbers |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Does this apply to all repos? Same question of the other stuff like "make fmt" and friends. Those are setup for Mixer, and unless they've been copied elsewhere, other repos aren't on that plan (yet).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it doesn't but I figured a developer will be smart to skip steps that don't work/apply as I mentioned in a few place we are using Mixer as an example component
it also doesn't apply to C++ for instance so we will need to refine those a bit in the future
Jenkins job istio/presubmit passed |
And linking the conventions and perf docs
@geeknoid thanks for the thorough review ! |
Jenkins job istio/presubmit passed |
1 similar comment
Jenkins job istio/presubmit passed |
devel/README.md
Outdated
### Setting up Go | ||
|
||
Many Istio components are written in the [Go](http://golang.org) programming language. | ||
To build Mixer, you'll need a Go development environment. Builds for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mixer -> Istio in this paragraph.
Jenkins job istio/presubmit passed |
* Moving common dev setup to istio/istio/devel See istio/istio#352 * Also move conventions and performance
* Moving copy/pasted docs to shared istio/devels See istio/istio#352 * Review comment: delete the whole directory And replaced references
* Rbac ingress (#320) * Add ingresses/status to rbac * fix bash'ism (#325) * fix bash'ism we tell people to `curl -L https://git.io/getIstio | sh -` so we can't use bash extentions I was getting [[ unknown command on line 12, fixing this * also updating comment * updateVersion.sh to not modify templates (#229) * istio install templates * fix copy * fix temp var * []byte values * fix linter errors * comment out unused ca vars * gofmt kubernetes.go * fix macros * fix kubeTest.sh * move istio-auth-with-cluster-ca.yaml out of templates dir (#334) * fix broken link (#335) * fixing #321 (#336) fixing broken links * Getting master ready for beta (#322) 0.1.x -> 0.2.x * Add v1/stable version (#351) * Add v1/stable version * Start of a local development directory (#337) * initial skeleton notes for local dev * tweaks * adding the rules.yaml for local dev and updating the scripts * Fixing English typo * Also start to address dev getting started Issue #348 * incorporated most of my noogler notes * Adding the sample quota * adding note about -v=5 for debug/verbose output * Code review comments * typo fix will follow up with moving most of mixer/dev/development.md into this * Moving most of mixer/doc/dev/development.md here (#352) * Moving most of mixer/doc/dev/development.md here https://github.com/istio/mixer/blob/master/doc/dev/development.md to here with updates to make it a bit more generic than just mixer * Also move conventions.md and performance.md here * Review comments And linking the conventions and perf docs * minor update * Manager -> pilot rename (#359) * Manager -> Pilot git ls-files | grep -v tests/e2e|grep -v bookinfo| xargs -n 1 sed -i .bak -e 's/Manager/Pilot/g' As tests/e2e and bookinfo have other Manager unrelated to pilot * manager -> pilot git ls-files | grep -v tests/e2e|grep -v bookinfo| xargs -n 1 sed -i .bak -e 's/manager/pilot/g' * Manual changes in e2e * MANAGER to PILOT git ls-files | xargs -n 1 sed -i .bak -e 's/MANAGER/PILOT/g' and manually excluding some * Rename yaml file too * Last few selective renames Last piece, only remaining ‘manager’ are: ``` ldemailly-macbookpro:istio ldemailly$ git grep -i manager samples/apps/bookinfo/src/reviews/reviews-wlpcfg/servers/LibertyProjectS erver/server.xml: <featureManager> samples/apps/bookinfo/src/reviews/reviews-wlpcfg/servers/LibertyProjectS erver/server.xml: </featureManager> tests/e2e/README.md:### appManager.go tests/e2e/README.md:`appManager` gather apps required for test into a array and deploy them while setup() tests/e2e/framework/BUILD: "appManager.go", tests/e2e/framework/appManager.go:// AppManager organize and deploy apps tests/e2e/framework/appManager.go:type AppManager struct { tests/e2e/framework/appManager.go:// NewAppManager create a new AppManager tests/e2e/framework/appManager.go:func NewAppManager(tmpDir, namespace string, istioctl *Istioctl) *AppManager { tests/e2e/framework/appManager.go: return &AppManager{ tests/e2e/framework/appManager.go:func (am *AppManager) generateAppYaml(a *App) error { tests/e2e/framework/appManager.go:func (am *AppManager) deploy(a *App) error { tests/e2e/framework/appManager.go:func (am *AppManager) Setup() error { tests/e2e/framework/appManager.go:func (am *AppManager) Teardown() error { tests/e2e/framework/appManager.go:func (am *AppManager) AddApp(a *App) { tests/e2e/framework/framework.go: c.Cleanup.RegisterCleanable(c.Kube.AppManager) tests/e2e/framework/kubernetes.go: pilotHub = flag.String("pilot_hub", os.Getenv(pilotHubEnvVar), "Manager hub") tests/e2e/framework/kubernetes.go: pilotTag = flag.String("pilot_tag", os.Getenv(pilotTagEnvVar), "Manager tag") tests/e2e/framework/kubernetes.go: "manager", tests/e2e/framework/kubernetes.go: // App Manager tests/e2e/framework/kubernetes.go: AppManager *AppManager tests/e2e/framework/kubernetes.go: a := NewAppManager(tmpDir, *namespace, i) tests/e2e/framework/kubernetes.go: AppManager: a, tests/e2e/framework/kubernetes.go: case "manager": tests/e2e/tests/bookinfo/demo_test.go: tc.Kube.AppManager.AddApp(demoApp) tests/e2e/tests/mixer/mixer_test.go: tc.Kube.AppManager.AddApp(demoApp) ``` * Review comment changed flag from m to p * make linter happy bin/fmt.sh + review updates * show in logs url being used (#360) A bit more info in logs for when download fails * Update images for Pilot & Unary (#361) * Update image for Unary * Fix forgotten renames * Disabling failing test until #365 is fixed (#366) * Skip TestDenials * Update format and linter to skip git files * Using git ls-files instead of find * Remove extra buildifier call * missed manager->pilot rename and use lowercase -c for ca image (#363) * Make shell utility functions variadic (#377) This simplifies usage a bit by not requiring user to call fmt.Sprintf themselves. * Re-enable TestDenials * Revert "Update images for Pilot & Unary (#361)" This reverts commit 2b210ac. * Revert "Getting master ready for beta (#322)" This reverts commit 910a025. * Update to latest version of manager
* Moving common dev setup to istio/istio/devel See istio/istio#352 * Also move conventions and performance Former-commit-id: ca58f01aabd134d387816bd45c0735bf4a870334
* Moving copy/pasted docs to shared istio/devels See istio/istio#352 * Review comment: delete the whole directory And replaced references
- Total size of the pool is controlled from the mixer command-line. This ultimately limits "parallel explosion" to keep resource usage within reasonable bounds. - Merge the parallel adapter manager functionality into the regular adapter manager and make it use the new goroutine pool. - The pool will also be used by the upcoming out-of-order API processing. - Add the Env.ScheduleWork method for adapters to schedule goroutines using their own dedicated pool. - Switch existing adapter goroutines to Env.ScheduleWork. This prevents those goroutines from tanking mixer. - Start a doc on guidelines for authoring adapters. Former-commit-id: d06adc72aae1e93b2da04604703fd457c3bb63fd
* Moving common dev setup to istio/istio/devel See istio#352 * Also move conventions and performance Former-commit-id: 6aabe62a4b90d0c87f6fc831ee8c7bad965b848d
* Moving most of mixer/doc/dev/development.md here https://github.com/istio/mixer/blob/master/doc/dev/development.md to here with updates to make it a bit more generic than just mixer * Also move conventions.md and performance.md here * Review comments And linking the conventions and perf docs * minor update Former-commit-id: 455a23d
* Rbac ingress (#320) * Add ingresses/status to rbac * fix bash'ism (#325) * fix bash'ism we tell people to `curl -L https://git.io/getIstio | sh -` so we can't use bash extentions I was getting [[ unknown command on line 12, fixing this * also updating comment * updateVersion.sh to not modify templates (#229) * istio install templates * fix copy * fix temp var * []byte values * fix linter errors * comment out unused ca vars * gofmt kubernetes.go * fix macros * fix kubeTest.sh * move istio-auth-with-cluster-ca.yaml out of templates dir (#334) * fix broken link (#335) * fixing #321 (#336) fixing broken links * Getting master ready for beta (#322) 0.1.x -> 0.2.x * Add v1/stable version (#351) * Add v1/stable version * Start of a local development directory (#337) * initial skeleton notes for local dev * tweaks * adding the rules.yaml for local dev and updating the scripts * Fixing English typo * Also start to address dev getting started Issue #348 * incorporated most of my noogler notes * Adding the sample quota * adding note about -v=5 for debug/verbose output * Code review comments * typo fix will follow up with moving most of mixer/dev/development.md into this * Moving most of mixer/doc/dev/development.md here (#352) * Moving most of mixer/doc/dev/development.md here https://github.com/istio/mixer/blob/master/doc/dev/development.md to here with updates to make it a bit more generic than just mixer * Also move conventions.md and performance.md here * Review comments And linking the conventions and perf docs * minor update * Manager -> pilot rename (#359) * Manager -> Pilot git ls-files | grep -v tests/e2e|grep -v bookinfo| xargs -n 1 sed -i .bak -e 's/Manager/Pilot/g' As tests/e2e and bookinfo have other Manager unrelated to pilot * manager -> pilot git ls-files | grep -v tests/e2e|grep -v bookinfo| xargs -n 1 sed -i .bak -e 's/manager/pilot/g' * Manual changes in e2e * MANAGER to PILOT git ls-files | xargs -n 1 sed -i .bak -e 's/MANAGER/PILOT/g' and manually excluding some * Rename yaml file too * Last few selective renames Last piece, only remaining ‘manager’ are: ``` ldemailly-macbookpro:istio ldemailly$ git grep -i manager samples/apps/bookinfo/src/reviews/reviews-wlpcfg/servers/LibertyProjectS erver/server.xml: <featureManager> samples/apps/bookinfo/src/reviews/reviews-wlpcfg/servers/LibertyProjectS erver/server.xml: </featureManager> tests/e2e/README.md:### appManager.go tests/e2e/README.md:`appManager` gather apps required for test into a array and deploy them while setup() tests/e2e/framework/BUILD: "appManager.go", tests/e2e/framework/appManager.go:// AppManager organize and deploy apps tests/e2e/framework/appManager.go:type AppManager struct { tests/e2e/framework/appManager.go:// NewAppManager create a new AppManager tests/e2e/framework/appManager.go:func NewAppManager(tmpDir, namespace string, istioctl *Istioctl) *AppManager { tests/e2e/framework/appManager.go: return &AppManager{ tests/e2e/framework/appManager.go:func (am *AppManager) generateAppYaml(a *App) error { tests/e2e/framework/appManager.go:func (am *AppManager) deploy(a *App) error { tests/e2e/framework/appManager.go:func (am *AppManager) Setup() error { tests/e2e/framework/appManager.go:func (am *AppManager) Teardown() error { tests/e2e/framework/appManager.go:func (am *AppManager) AddApp(a *App) { tests/e2e/framework/framework.go: c.Cleanup.RegisterCleanable(c.Kube.AppManager) tests/e2e/framework/kubernetes.go: pilotHub = flag.String("pilot_hub", os.Getenv(pilotHubEnvVar), "Manager hub") tests/e2e/framework/kubernetes.go: pilotTag = flag.String("pilot_tag", os.Getenv(pilotTagEnvVar), "Manager tag") tests/e2e/framework/kubernetes.go: "manager", tests/e2e/framework/kubernetes.go: // App Manager tests/e2e/framework/kubernetes.go: AppManager *AppManager tests/e2e/framework/kubernetes.go: a := NewAppManager(tmpDir, *namespace, i) tests/e2e/framework/kubernetes.go: AppManager: a, tests/e2e/framework/kubernetes.go: case "manager": tests/e2e/tests/bookinfo/demo_test.go: tc.Kube.AppManager.AddApp(demoApp) tests/e2e/tests/mixer/mixer_test.go: tc.Kube.AppManager.AddApp(demoApp) ``` * Review comment changed flag from m to p * make linter happy bin/fmt.sh + review updates * show in logs url being used (#360) A bit more info in logs for when download fails * Update images for Pilot & Unary (#361) * Update image for Unary * Fix forgotten renames * Disabling failing test until #365 is fixed (#366) * Skip TestDenials * Update format and linter to skip git files * Using git ls-files instead of find * Remove extra buildifier call * missed manager->pilot rename and use lowercase -c for ca image (#363) * Make shell utility functions variadic (#377) This simplifies usage a bit by not requiring user to call fmt.Sprintf themselves. * Re-enable TestDenials * Revert "Update images for Pilot & Unary (#361)" This reverts commit 6362d37 [formerly 2b210ac]. * Revert "Getting master ready for beta (#322)" This reverts commit 52e8937 [formerly 910a025]. * Update to latest version of manager Former-commit-id: 6a65da1
- Total size of the pool is controlled from the mixer command-line. This ultimately limits "parallel explosion" to keep resource usage within reasonable bounds. - Merge the parallel adapter manager functionality into the regular adapter manager and make it use the new goroutine pool. - The pool will also be used by the upcoming out-of-order API processing. - Add the Env.ScheduleWork method for adapters to schedule goroutines using their own dedicated pool. - Switch existing adapter goroutines to Env.ScheduleWork. This prevents those goroutines from tanking mixer. - Start a doc on guidelines for authoring adapters. Former-commit-id: 5af29b952df24741a1bec1a3ccb532ceaa84b45e
Stopgap ingress TLS/SSL termination via command line argument.
* Moving most of mixer/doc/dev/development.md here https://github.com/istio/mixer/blob/master/doc/dev/development.md to here with updates to make it a bit more generic than just mixer * Also move conventions.md and performance.md here * Review comments And linking the conventions and perf docs * minor update Former-commit-id: 455a23d
This seems to work and generate a running operator, however, the operator doesn't appear to do any work.
https://github.com/istio/mixer/blob/master/doc/dev/development.md to
here with updates to make it a bit more generic than just mixer