github.com/joey-fossa/fossa-cli@v0.7.34-0.20190708193710-569f1e8679f0/docs/integrations/okbuck.md (about) 1 # [OkBuck](#https://github.com/uber/okbuck#okbuck) 2 3 ## Support 4 5 OkBuck support relies on the presence of a buck wrapper, `./buckw`, to be present in an okbuck repository. 6 7 ## Configuration 8 9 ### Automatic 10 11 Run `fossa init` to detect if a `buckw` binary exists in the present directory. 12 13 ### Manual 14 15 Add a module with `type: okbuck`, `target` set to a valid buck target, and `dir` set to the root of the project. 16 17 ```yaml 18 analyze: 19 modules: 20 - name: okbuck 21 type: okbuck 22 target: //... 23 dir: . 24 options: 25 classpath: //app:bin_prodRelease 26 ``` 27 28 ## Options 29 30 | Option | Type | Name | Common Use Case | 31 | ----------- | :----: | --------------------------------- | ---------------------------------------------------- | 32 | `classpath` | string | [Class Path](#classpath-string) | Retrieve the dependencies from a specific classpath. | 33 34 #### `classpath: <striong>` 35 36 Specifying a classpath ensures that only dependencies related to the specified classpath are returned. In order to do this, FOSSA must modify the normal analysis to: 37 1. Run `./buckw audit classpath <target> ` to find jar's used by the classpath. 38 2. Map the jar's to the dependency information from `./buckw targets //...`. 39 3. Return the corresponding Maven coordinates. 40 41 ## Analysis 42 43 Analysis of an okbuck project leverages the existence of maven coordinates in the build information. By default, FOSSA will run `buck targets //... --json` and parse the Maven coordinates from each target into a dependency.