Getting Started
This page will help you get up and running with yams
Prerequisites
- Go >=
1.24
Installation
yams can be used as a Go library via:
go get -u github.com/nsiow/yams
Similarly, the CLI for yams can be installed via:
go install github.com/nsiow/yams/cmd/yams@latest
Note
If installing via go install, ensure that you have go env GOPATH somewhere in your $PATH
Alternatively, you can clone the source and run:
make && make install
By default, the make commands will install yams to /usr/local/bin/. If you wish to install
elsewhere or do not have sufficient permissions, you may need to either:
- Set the
YAMS_INSTALL_DIRenvironment variable to an alternative location - Run
make installas root
Running a Server
A local or remote instance of the yams server can be started via:
yams server \
-source testdata/real-world/awsconfig.jsonl \
-source testdata/real-world/org.jsonl
- For information about configuring sources, see Data Sources
- For information about generating data, see Generating Data
Configuring the CLI
There are two options for pointing the yams CLI at the desired server:
- via the
-s/--serverflag for individual invocations - via the
YAMS_SERVER_ADDRESSenvironment variable
Once set, you should be able to confirm connectivity using the status subcommand:
yams status
{
"accounts": 4,
"entities": 1448,
"groups": 0,
"policies": 1371,
"principals": 20,
"resources": 53,
"sources": [
{
"source": "testdata/real-world/awsconfig.jsonl",
"updated": "2025-03-15T:04:35.173468943-07:00"
},
{
"source": "testdata/real-world/org.jsonl",
"updated": "2025-03-35T:04:35.173687682-07:00"
}
]
}