From 9f5f1e6fa68fd0ee627122b9e5c8809519e5bba8 Mon Sep 17 00:00:00 2001 From: Torin Sandall Date: Thu, 17 Mar 2016 22:25:07 -0700 Subject: [PATCH 1/2] Attempting to fix SVGs --- docs/CONCEPTS.md | 8 ++++---- docs/data-model-dependencies.png | Bin 51527 -> 0 bytes docs/data-model-dependencies.svg | 3 +++ docs/data-model-logical.png | Bin 57355 -> 0 bytes docs/data-model-logical.svg | 3 +++ docs/deployment.png | Bin 8907 -> 0 bytes docs/deployment.svg | 3 +++ docs/overview.png | Bin 26168 -> 0 bytes docs/overview.svg | 3 +++ 9 files changed, 16 insertions(+), 4 deletions(-) delete mode 100644 docs/data-model-dependencies.png create mode 100644 docs/data-model-dependencies.svg delete mode 100644 docs/data-model-logical.png create mode 100644 docs/data-model-logical.svg delete mode 100644 docs/deployment.png create mode 100644 docs/deployment.svg delete mode 100644 docs/overview.png create mode 100644 docs/overview.svg diff --git a/docs/CONCEPTS.md b/docs/CONCEPTS.md index 23c51b3811..e66a617e3f 100644 --- a/docs/CONCEPTS.md +++ b/docs/CONCEPTS.md @@ -48,7 +48,7 @@ These core requirements capture the guiding principles behind the concepts and d ## Overview Conceptually, OPA is a collection of algorithms that answer questions about policy. -![Overview](./overview.png) + At a high level, using OPA involves: @@ -68,7 +68,7 @@ When OPA is started for the first time it contains no policies or data. Applicat Applications interact with OPA via HTTP. -![Deployment](./deployment.png) + ## APIs @@ -186,11 +186,11 @@ Conceptually, there are two kinds of documents in OPA: **Virtual documents** are defined by rules inside policies. OPA computes the contents of virtual documents when callers execute queries against rules or when dependant documents are modified. Virtual documents are defined in terms of base documents and other virtual documents. Policy authors can use virtual documents to define abstractions which are useful for expressing high level policy and insulating policy from schema changes in low level data. -![Data Model](data-model-dependencies.png) + When defining policies, rules are written which contain expressions that reference documents. The language that rules are written in ("Opalog") lets you reference base documents and virtual documents in exactly the same way. -![Data Model Logical](data-model-logical.png) + ## Policies diff --git a/docs/data-model-dependencies.png b/docs/data-model-dependencies.png deleted file mode 100644 index be558ea938a6e5f4086c3c71d33a6fea4d4f7be0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51527 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 diff --git a/docs/data-model-dependencies.svg b/docs/data-model-dependencies.svg new file mode 100644 index 0000000000..6922615268 --- /dev/null +++ b/docs/data-model-dependencies.svg @@ -0,0 +1,3 @@ + + + Produced by OmniGraffle 6.5 2016-03-18 04:17:26 +0000Data Model DependenciesLayer 1violation[] = x :- x = t[].x, x.attr = …{ violation: [ ]}{ “…”: “...", “…”: […]}{ n: bar, z: 3.14, baz: [{a: b}]}{ “…”: “…”, d: {g: h}, e: [{1: 2}]}{ mt: abc, 12: [false, n] “…”: blk}[ abc, def, {foo: bar}]u[] = y :- q[].attr1 = yq[] = x :- r[].bar[] = xt[] = x :- p[] = x, not x = z[], x > m[].bappappvirtual documentsbase documentsrules diff --git a/docs/data-model-logical.png b/docs/data-model-logical.png deleted file mode 100644 index b9e3af0b84ca1cf1af0998a29bc49d02e0172a0a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 57355 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 + + Produced by OmniGraffle 6.5 2016-03-18 04:17:26 +0000Data Model Logical 2Layer 1data {}opa {}examples {}package opa.examplesimport ...public_servers[] = server :- server = servers[] server.ports[] = ports[i].id ports[i].network = networks[j].id networks[j].public package opa.examplesimport data.serversviolations[] = server :- server = servers[] public_servers[] = server server.protocols[] = “http”ports [ … ]networks [ … ]servers [ … ]public_servers [ … ]violations [ … ]appapp diff --git a/docs/deployment.png b/docs/deployment.png deleted file mode 100644 index fa63afd2684ce1fa292da74f58195c54b2d653a4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8907 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 diff --git a/docs/deployment.svg b/docs/deployment.svg new file mode 100644 index 0000000000..b4ac3a5277 --- /dev/null +++ b/docs/deployment.svg @@ -0,0 +1,3 @@ + + + Produced by OmniGraffle 6.5 2016-03-18 04:17:26 +0000DeploymentLayer 1serveropadAPPAPPappprocessIPC (http) diff --git a/docs/overview.png b/docs/overview.png deleted file mode 100644 index c02136d939c05b33a00de58e7c8cc329cb88664c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 26168 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 dP)+E*B#3d>Bvv;X3&8__nri>4)+yUY{~zq^Rp + + Produced by OmniGraffle 6.5 2016-03-18 04:17:26 +0000OverviewLayer 1opapolicy storeq[k] = v :- d.e[k] = vt :- p[] = x, q[] =xp[] = x :- r[].bar[] = xr[] = v :- …data crudpolicy crudtxnevaluation enginehttpdocument store{ foo: bar, z: 3.14, baz: [{a: b}]}[1, 2, false, “qui”]{m: n, n: 100}{ emp: [{name: … office: {ca: …}triggers From 903ce87f066ba56fde3190c01af690b0544a2e21 Mon Sep 17 00:00:00 2001 From: Torin Sandall Date: Thu, 17 Mar 2016 23:11:46 -0700 Subject: [PATCH 2/2] Lock SVGs to commit and use CDN --- docs/CONCEPTS.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/CONCEPTS.md b/docs/CONCEPTS.md index e66a617e3f..64cd328d77 100644 --- a/docs/CONCEPTS.md +++ b/docs/CONCEPTS.md @@ -48,7 +48,7 @@ These core requirements capture the guiding principles behind the concepts and d ## Overview Conceptually, OPA is a collection of algorithms that answer questions about policy. - + At a high level, using OPA involves: @@ -68,7 +68,7 @@ When OPA is started for the first time it contains no policies or data. Applicat Applications interact with OPA via HTTP. - + ## APIs @@ -186,11 +186,11 @@ Conceptually, there are two kinds of documents in OPA: **Virtual documents** are defined by rules inside policies. OPA computes the contents of virtual documents when callers execute queries against rules or when dependant documents are modified. Virtual documents are defined in terms of base documents and other virtual documents. Policy authors can use virtual documents to define abstractions which are useful for expressing high level policy and insulating policy from schema changes in low level data. - + When defining policies, rules are written which contain expressions that reference documents. The language that rules are written in ("Opalog") lets you reference base documents and virtual documents in exactly the same way. - + ## Policies