From baadf551efe9f60fc2a25df21cd995b569937fde Mon Sep 17 00:00:00 2001 From: EdProsser Date: Thu, 6 Jul 2017 16:32:03 +0100 Subject: [PATCH 01/14] v.1 diagnosing and connector specific info --- .../jekylldocs/_includes/sidebars/managing.md | 1 + .../managing/connector-information.md | 18 ++++++++++++++++ .../jekylldocs/problems/diagnostics.md | 21 ++++++++++++++++--- 3 files changed, 37 insertions(+), 3 deletions(-) create mode 100644 packages/composer-website/jekylldocs/managing/connector-information.md diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/managing.md b/packages/composer-website/jekylldocs/_includes/sidebars/managing.md index f7bafc398f..3c988fe04d 100644 --- a/packages/composer-website/jekylldocs/_includes/sidebars/managing.md +++ b/packages/composer-website/jekylldocs/_includes/sidebars/managing.md @@ -12,6 +12,7 @@ - [Enabling OAuth using GitHub](../managing/github-oauth.html) - [Enabling access control using the current participant](../managing/current-participant.html) - [Updating {{site.data.conrefs.composer_full}}](../managing/updating-composer.html) + - [Connector Specific Information](../managing/connector-information.html) - [Diagnosing Problems](../problems/diagnostics.html) - [Reference](../reference/reference-index.html) - [Support](../support/index.html) diff --git a/packages/composer-website/jekylldocs/managing/connector-information.md b/packages/composer-website/jekylldocs/managing/connector-information.md new file mode 100644 index 0000000000..fbc74caf10 --- /dev/null +++ b/packages/composer-website/jekylldocs/managing/connector-information.md @@ -0,0 +1,18 @@ +--- +layout: default +title: Connector Specific Information +category: tasks +section: managing +sidebar: sidebars/managing.md +excerpt: +index-order: 8 +--- + +# Connector Specific Information + +{{site.data.conrefs.composer_full}} is designed to be platform-agnostic + + +## {{site.data.conrefs.hlf_full}} + +There are several cases where information specific to {{site.data.conrefs.hlf_full}} must be included in {{site.data.conrefs.composer_full}} commands, including `composer network deploy`, and `composer identity issue`. diff --git a/packages/composer-website/jekylldocs/problems/diagnostics.md b/packages/composer-website/jekylldocs/problems/diagnostics.md index dc3d631f65..2cdaa5e68d 100644 --- a/packages/composer-website/jekylldocs/problems/diagnostics.md +++ b/packages/composer-website/jekylldocs/problems/diagnostics.md @@ -10,13 +10,27 @@ index-order: 0 # Diagnosing Problems +Composer uses the Winston logging module by default - and will use the Config module to look for any configuration information. If none is found, then a set of defaults will be used. + +The config module does write out a warning, if there are no configuration files set. Eg. `WARNING: No configurations found in configuration directory`. This can be suppressed with an environment variable if you are happy with the defaults and don't wish to use config in your application. See more information [here](https://github.com/lorenwest/node-config/wiki/Environment-Variables#suppress_no_config_warning). + + +## User Applications - Dan +## Business Networks - Liam/Matthew +## CLI - David +## Rest Server - Simon +## Playground - Caroline +## Composer Runtime - David +## {{site.data.conrefs.hlf_full}} RC1 - David + + From 2af32d3579669a2aa8dddf2a17b1f7d723e8029f Mon Sep 17 00:00:00 2001 From: EdProsser Date: Mon, 10 Jul 2017 10:59:07 +0100 Subject: [PATCH 02/14] minor update --- .../jekylldocs/business-network/bnd-deploy.md | 3 ++- .../jekylldocs/problems/diagnostics.md | 16 +++++++++++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/composer-website/jekylldocs/business-network/bnd-deploy.md b/packages/composer-website/jekylldocs/business-network/bnd-deploy.md index 51e43ee2ff..56543b196e 100644 --- a/packages/composer-website/jekylldocs/business-network/bnd-deploy.md +++ b/packages/composer-website/jekylldocs/business-network/bnd-deploy.md @@ -22,7 +22,7 @@ For example: To update the definition of an already deployed business network use the `composer network update` CLI command. -## Deploying business networks to {{site.data.conrefs.hlf_full}} v1.0 RC 1 +## Deploying business networks to {{site.data.conrefs.hlf_full}} RC 1 In {{site.data.conrefs.hlf_full}} v1.0 RC 1 peers now enforce the concepts of admins and members. Admin user's identities and crypto material must be available to the peer at deployment. To make that identity and its crypto material available, your must import it to your local `keyValStore` directory before deploying the business network. To import the identity, use the [`composer identity import` command](../reference/composer.identity.import.html). When importing an identity, you do not assign it a secret, however the `composer network deploy` command requires a secret. If you are using an imported identity, you can enter any value for the secret. @@ -34,6 +34,7 @@ Due to many breaking API changes between {{site.data.conrefs.hlf_full}} alpha 1 When deploying a business network to {{site.data.conrefs.hlf_full}} v1.0 RC 1 using the Playground locally, you must follow the process above to connect using the peer admin identity. However, in order to create identities and interact with your business network in the Playground, you must use the certificate authority admin identity. + ## References * [**Composer CLI commands**](../reference/commands.html) diff --git a/packages/composer-website/jekylldocs/problems/diagnostics.md b/packages/composer-website/jekylldocs/problems/diagnostics.md index 2cdaa5e68d..f45a2b6123 100644 --- a/packages/composer-website/jekylldocs/problems/diagnostics.md +++ b/packages/composer-website/jekylldocs/problems/diagnostics.md @@ -18,12 +18,26 @@ The config module does write out a warning, if there are no configuration files ## User Applications - Dan ## Business Networks - Liam/Matthew ## CLI - David + +- `DEBUG=composer:* composer network deploy` <-- debugs the command. dumps soem debug info to console. tracefile written to logs directory of CurrentWorkingDir. sort by date and look for recent. + ## Rest Server - Simon ## Playground - Caroline + + ## Composer Runtime - David + +- logLevel -> network deploy and loglevel designed for doing this shit. +- docker command to get logs out `docker logs ` <-- this gets more complex. chaincode names dev- + +- composer runtime < should loglevel be here. (mebs next week) +- advice: set loglevel to debug on deploy because if deploy breaks you want the logs. + + ## {{site.data.conrefs.hlf_full}} RC1 - David - Part[] Parts + } + ``` + +5. An optional 'abstract' declaration, to indicate that this type cannot be created. Abstract resources can be used as a basis for other classes to extend. Extensions of abstract classes do not inherit the abstract status. For example, the asset `Vehicle` defined above should never be created, as there should be more specific asset classes defined to extend it. + + ``` + /** + * An abstract Vehicle asset. + */ + abstract asset Vehicle identified by vin { + o String vin + } + ``` + +6. A set of named properties. The properties must be named, and the primitive data type defined.The properties and their data are owned by each resource, for example, a `Car` asset has a `vin`, and a `model` property, both of which are strings. +7. A set of relationships to other Composer types that are not owned by the resource but that may be referenced from the resource. Relationships are unidirectional. ``` /** @@ -93,8 +128,7 @@ but that may be referenced from the resource. Relationships are unidirectional. /** * An abstract event type */ - event BasicEvent identified by eventId { - o String eventId + event BasicEvent { } ``` @@ -102,8 +136,7 @@ but that may be referenced from the resource. Relationships are unidirectional. /** * An abstract transaction type for animal movements */ - abstract transaction AnimalMovement identified by transactionId { - o String transactionId + abstract transaction AnimalMovement { --> Animal animal } ``` @@ -117,35 +150,33 @@ but that may be referenced from the resource. Relationships are unidirectional. } ``` +### Declarations of enumerated types +Enumerated types are to define the potential content of properties of other resources. By using enumerated types, the expected content in a field can be restricted and controlled, reducing unexpected data. The following enumerated type declaration contains a list of roles. -## {{site.data.conrefs.composer_full}} System Namespace - -As well as defining new classes of asset, participant, event, and transaction, there is a system namespace which contains the base definitions of asset, event, participant, and transaction. These base definitions are abstracts which are implicitly extended by all assets, events, participants, and transactions. +``` +/** +* An enumerated type +*/ +enum product { +o DAIRY +o BEEF +o VEGETABLES +} +``` -Represented as a `.cto` model file, the system namespace is as follows: +When another resource is created, for example, a participant, a property of that resource can be defined to expect one of the enumerated types. ``` - namespace org.hyperledger.composer.system - abstract asset Asset { } - abstract participant Participant { } - abstract transaction Transaction identified by transactionId{ - o String transactionId - o DateTime timestamp - } - abstract event Event identified by eventId{ - o String eventId - o DateTime timestamp - } +participant Farmer identified by farmerId { + o String farmerId + o product primaryProduct ``` -In the system namespace definitions, asset and participant have no required values. Events and transactions are defined by an eventId or transactionId and a timestamp. - ->If you have defined an event or transaction including an eventId, transactionId, or timestamp, you must delete the eventId, transactionId, or timestamp properties. -## Concepts +### Concepts -Concepts are complex types (classes) that are not assets, participants or transactions. They are typically contained by an asset, participant or transaction. +Concepts are abstract classes that are not assets, participants or transactions. They are typically contained by an asset, participant or transaction. For example, below an abstract concept `Address` is defined, and then specialized into a `UnitedStatesAddress`. Note that concepts do not have an `identified by` field as they cannot be directly stored in registries or referenced in relationships. @@ -163,21 +194,20 @@ concept UnitedStatesAddress extends Address { ``` -## Primitive types +### Primitive types Composer resources are defined in terms of the following primitive types: -1. String : a UTF8 encoded String -2. Double : a double precision 64 bit numeric value -3. Integer : a 32 bit signed whole number -4. Long : a 64 bit signed whole number -5. DateTime : an ISO-8601 compatible time instance, with optional time zone -and UTZ offset -6. Boolean : a Boolean value, either true or false. +1. String: a UTF8 encoded String. +2. Double: a double precision 64 bit numeric value. +3. Integer: a 32 bit signed whole number. +4. Long: a 64 bit signed whole number. +5. DateTime: an ISO-8601 compatible time instance, with optional time zone and UTZ offset. +6. Boolean: a Boolean value, either true or false. -## Arrays +### Arrays -All types in Composer may be declared as arrays using the [] notation. Hence +All types in Composer may be declared as arrays using the [] notation. Integer[] integerArray @@ -188,7 +218,7 @@ Is an array of Integers stored in a field called 'integerArray'. While Is an array of relationships to the Animal type, stored in a field called 'incoming'. -## Relationships +### Relationships A relationship in the Composer language is a tuple composed of: @@ -208,7 +238,7 @@ Relationships must be *resolved* to retrieve an instance of the object being referenced. The act of resolution may result in null, if the object no longer exists or the information in the relationship is invalid. -## Field Validators +### Field Validators String fields may include an optional regular expression, which is used to validate the contents of the field. Careful use of field validators allows Composer to perform rich data validation, leading to fewer errors and less boilerplate code. @@ -250,3 +280,12 @@ asset Vehicle extends Base { o Customer customer } ``` + +## Imports + +Use the `import` keyword with a fully-qualified type name to import a type from another namespace. Alternatively use the `.*` notation to import all the types from another namespace. + +``` +import org.example.MyAsset +import org.example2.* +``` From bb945feafef9ea425452aebe39afc89feb6ff03e Mon Sep 17 00:00:00 2001 From: EdProsser Date: Thu, 13 Jul 2017 13:50:04 +0100 Subject: [PATCH 04/14] Add in shortened accordion ToC --- .../jekylldocs/_includes/sidebars/accordion-toc.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md new file mode 100644 index 0000000000..513b51fe03 --- /dev/null +++ b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md @@ -0,0 +1,11 @@ +{% assign sorted = site.pages | sort: 'index-order' %} +{% for page in sorted %} +{% if page.index-order %} +{% capture mods %}{{ page.index-order | modulo:100 }}{% endcapture %} +{% if mods == "0" %} +- [{{ page.title }}]({{site.url}}/composer{{page.url}}.html) +{% elsif mods != "0" %} + - [{{page.title}}]({{site.url}}/composer{{page.url}}.html) +{% endif %} +{% endif %} +{% endfor %} From 0db3091178e95f70721a49fb5c6d82bb96207253 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Mon, 17 Jul 2017 17:45:15 +0100 Subject: [PATCH 05/14] Merge remote-tracking branch 'hyperledger/master' into 6-7-17-ed # Conflicts: # packages/composer-website/jekylldocs/_includes/sidebars/managing.md --- .../jekylldocs/assets/img/.gitignore | 0 .../jekylldocs/assets/img/banner-center.png | Bin .../jekylldocs/assets/img/banner-left.png | Bin .../jekylldocs/assets/img/banner-right.png | Bin .../jekylldocs/assets/img/content-bg.png | Bin .../jekylldocs/assets/img/content-list-dot.png | Bin .../jekylldocs/assets/img/icon-contributing.png | Bin .../jekylldocs/assets/img/icon-discuss.png | Bin .../jekylldocs/assets/img/icon-documentation.png | Bin .../jekylldocs/assets/img/icon-faqs.png | Bin .../jekylldocs/assets/img/icon-getting-started.png | Bin .../jekylldocs/assets/img/icon-github.png | Bin .../jekylldocs/assets/img/icon-google-plus.png | Bin .../jekylldocs/assets/img/icon-home.png | Bin .../jekylldocs/assets/img/icon-link.png | Bin .../jekylldocs/assets/img/icon-menu.png | Bin .../jekylldocs/assets/img/icon-requirements.png | Bin .../jekylldocs/assets/img/icon-rss-feed.png | Bin .../jekylldocs/assets/img/icon-twitter.png | Bin .../jekylldocs/assets/img/icon-why-yeoman.png | Bin .../jekylldocs/assets/img/jumbotron-bottom.png | Bin .../jekylldocs/assets/img/nav-bg.png | Bin .../jekylldocs/assets/img/stitch-line.png | Bin .../jekylldocs/assets/img/subnav-dot.png | Bin .../img/tutorials/developer/commodity_app.png | Bin .../img/tutorials/developer/commodity_registry.png | Bin .../developer/commodity_registry_after.png | Bin .../tutorials/developer/composer-rest-server.png | Bin .../tutorials/developer/composer-yo-generator.png | Bin .../img/tutorials/developer/create_commodity.png | Bin .../img/tutorials/developer/create_trader.png | Bin .../img/tutorials/developer/import_replace.png | Bin .../tutorials/developer/import_replace_confirm.png | Bin .../img/tutorials/developer/lb_create_trader.png | Bin .../assets/img/tutorials/developer/lb_explorer.png | Bin .../img/tutorials/developer/lb_get_trader.png | Bin .../img/tutorials/developer/skeleton_add_asset.png | Bin .../assets/img/tutorials/developer/submit_tx.png | Bin .../img/tutorials/developer/trader_registry.png | Bin .../assets/img/tutorials/developer/tx_registry.png | Bin .../img/tutorials/developer/vscode_editor_linux.png | Bin .../img/tutorials/developer/vscode_explorer.png | Bin .../img/tutorials/developer/vscode_extensions.png | Bin .../img/tutorials/developer/vscode_project.png | Bin 44 files changed, 0 insertions(+), 0 deletions(-) mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/.gitignore mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/banner-center.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/banner-left.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/banner-right.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/content-bg.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/content-list-dot.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-contributing.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-discuss.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-documentation.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-faqs.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-getting-started.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-github.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-google-plus.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-home.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-link.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-menu.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-requirements.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-rss-feed.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-twitter.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/icon-why-yeoman.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/jumbotron-bottom.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/nav-bg.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/stitch-line.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/subnav-dot.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_app.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_registry.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_registry_after.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/composer-rest-server.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/composer-yo-generator.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/create_commodity.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/create_trader.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/import_replace.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/import_replace_confirm.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_create_trader.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_explorer.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_get_trader.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/skeleton_add_asset.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/submit_tx.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/trader_registry.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/tx_registry.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_editor_linux.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_explorer.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_extensions.png mode change 100755 => 100644 packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_project.png diff --git a/packages/composer-website/jekylldocs/assets/img/.gitignore b/packages/composer-website/jekylldocs/assets/img/.gitignore old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/banner-center.png b/packages/composer-website/jekylldocs/assets/img/banner-center.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/banner-left.png b/packages/composer-website/jekylldocs/assets/img/banner-left.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/banner-right.png b/packages/composer-website/jekylldocs/assets/img/banner-right.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/content-bg.png b/packages/composer-website/jekylldocs/assets/img/content-bg.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/content-list-dot.png b/packages/composer-website/jekylldocs/assets/img/content-list-dot.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-contributing.png b/packages/composer-website/jekylldocs/assets/img/icon-contributing.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-discuss.png b/packages/composer-website/jekylldocs/assets/img/icon-discuss.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-documentation.png b/packages/composer-website/jekylldocs/assets/img/icon-documentation.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-faqs.png b/packages/composer-website/jekylldocs/assets/img/icon-faqs.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-getting-started.png b/packages/composer-website/jekylldocs/assets/img/icon-getting-started.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-github.png b/packages/composer-website/jekylldocs/assets/img/icon-github.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-google-plus.png b/packages/composer-website/jekylldocs/assets/img/icon-google-plus.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-home.png b/packages/composer-website/jekylldocs/assets/img/icon-home.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-link.png b/packages/composer-website/jekylldocs/assets/img/icon-link.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-menu.png b/packages/composer-website/jekylldocs/assets/img/icon-menu.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-requirements.png b/packages/composer-website/jekylldocs/assets/img/icon-requirements.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-rss-feed.png b/packages/composer-website/jekylldocs/assets/img/icon-rss-feed.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-twitter.png b/packages/composer-website/jekylldocs/assets/img/icon-twitter.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/icon-why-yeoman.png b/packages/composer-website/jekylldocs/assets/img/icon-why-yeoman.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/jumbotron-bottom.png b/packages/composer-website/jekylldocs/assets/img/jumbotron-bottom.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/nav-bg.png b/packages/composer-website/jekylldocs/assets/img/nav-bg.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/stitch-line.png b/packages/composer-website/jekylldocs/assets/img/stitch-line.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/subnav-dot.png b/packages/composer-website/jekylldocs/assets/img/subnav-dot.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_app.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_app.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_registry.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_registry.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_registry_after.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/commodity_registry_after.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/composer-rest-server.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/composer-rest-server.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/composer-yo-generator.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/composer-yo-generator.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/create_commodity.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/create_commodity.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/create_trader.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/create_trader.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/import_replace.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/import_replace.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/import_replace_confirm.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/import_replace_confirm.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_create_trader.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_create_trader.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_explorer.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_explorer.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_get_trader.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/lb_get_trader.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/skeleton_add_asset.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/skeleton_add_asset.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/submit_tx.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/submit_tx.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/trader_registry.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/trader_registry.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/tx_registry.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/tx_registry.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_editor_linux.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_editor_linux.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_explorer.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_explorer.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_extensions.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_extensions.png old mode 100755 new mode 100644 diff --git a/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_project.png b/packages/composer-website/jekylldocs/assets/img/tutorials/developer/vscode_project.png old mode 100755 new mode 100644 From a804b1bf2aa6023e5e480e2d3e3fb859e8842e96 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Tue, 18 Jul 2017 14:55:16 +0100 Subject: [PATCH 06/14] System ACL doc --- .../jekylldocs/reference/acl_language.md | 85 ++++++++++++++++++- 1 file changed, 82 insertions(+), 3 deletions(-) diff --git a/packages/composer-website/jekylldocs/reference/acl_language.md b/packages/composer-website/jekylldocs/reference/acl_language.md index 4864ddc630..d1c3a148f6 100644 --- a/packages/composer-website/jekylldocs/reference/acl_language.md +++ b/packages/composer-website/jekylldocs/reference/acl_language.md @@ -13,13 +13,92 @@ excerpt: The [**Hyperledger Composer access control language**](./acl_language.h {{site.data.conrefs.composer_full}} includes an access control language (ACL) that provides declarative access control over the elements of the domain model. By defining ACL rules you can determine which users/roles are permitted to create, read, update or delete elements in a business network's domain model. -### Evaluation of Access Control Rules +## Network Access Control + +{{site.data.conrefs.composer_full}} differentiates between access control for resources within a business network (business access control) and access control for network administrative changes (network access control). Business access control and network access control are both defined in the access control file (`.acl`) for a business network. + +Network access control uses the system namespace, which is implicitly extended by all resources in a business network; and grants or denies access to specific actions as defined below, and is intended to allow for more nuanced access to certain network-level operations. + +### What does network access control allow or disallow? + +Network access control affects the following CLI commands: + + +#### Composer Network + +**composer network deploy** + +Network access is required to use the CREATE operation for registries and networks. + +**composer network download** + +Network access is required to use the READ operation for registries and networks. + +**composer network list** + +Network access is required to use the READ operation for registries and networks. + +**composer network logLevel** + +Network access is required to use the UPDATE operation for networks. + +**composer network ping** + +Network access is required to use the READ operation on registries and networks. + +**composer network undeploy** + +Network access is required to use the DELETE operation on registries and networks. + +**composer network update** + +Network access is required to use the UPDATE or CREATE operation on registries, or the UPDATE operation on networks. + + +#### Composer Identity + +**composer network import** + +Network access is required to use the UPDATE operation on identity registries or the CREATE operation on identities. + +**composer network issue** + +Network access is required to use the UPDATE operation on identity registries or the CREATE operation on identities. + +**composer network revoke** + +Network access is required to use the UPDATE operation on identity registries or the DELETE operation on identities. + +#### Composer Participant + +**composer network add** + +Network access is required to use the CREATE operation on participants or the UPDATE operation on participant registries. + +### Granting network access control + +Network access is granted using the system namespace. The system namespace is always `org.hyperledger.composer.system`. + +The following access control rule will give all participants access to all operations and commands in the business network, including network access and business access. + +``` +rule AllAccess { + description: "AllAccess - grant everything to everybody" + participant: "org.hyperledger.composer.system.Participant" + operation: ALL + resource: "org.hyperledger.composer.system.**" + action: ALLOW +} +``` + + +## Evaluation of Access Control Rules Access control for a business network is defined by an ordered set of ACL rules. The rules are evaluated in order, and the first rule whose condition matches determines whether access is granted or denied. If no rule match then access is **denied**. ACL rules are defined in a file called `permissions.acl` in the root of the business network. If this file is missing from the business network then all access is **permitted**. -### Access Control Rule Grammar +## Access Control Rule Grammar There are two types of ACL rules: simple ACL rules and conditional ACL rules. Simple rules are used to control access to a namespace, asset or property of an asset by a participant type or participant instance. @@ -87,7 +166,7 @@ Resource Examples: **Action** identifies the action of the rule. It must be one of: ALLOW, DENY. -### Examples +## Examples Example ACL rules (in evaluation order): From d42476d79d69cc9ad688e71411637089e63f2e9f Mon Sep 17 00:00:00 2001 From: EdProsser Date: Wed, 19 Jul 2017 10:59:32 +0100 Subject: [PATCH 07/14] More changes --- .../_includes/sidebars/accordion-toc.md | 11 ----------- .../_includes/sidebars/accordion-toc0.md | 4 ++-- .../_includes/sidebars/businessnetworks.md | 17 ----------------- .../jekylldocs/_includes/sidebars/managing.md | 18 ------------------ 4 files changed, 2 insertions(+), 48 deletions(-) delete mode 100644 packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md delete mode 100644 packages/composer-website/jekylldocs/_includes/sidebars/businessnetworks.md delete mode 100644 packages/composer-website/jekylldocs/_includes/sidebars/managing.md diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md deleted file mode 100644 index 513b51fe03..0000000000 --- a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc.md +++ /dev/null @@ -1,11 +0,0 @@ -{% assign sorted = site.pages | sort: 'index-order' %} -{% for page in sorted %} -{% if page.index-order %} -{% capture mods %}{{ page.index-order | modulo:100 }}{% endcapture %} -{% if mods == "0" %} -- [{{ page.title }}]({{site.url}}/composer{{page.url}}.html) -{% elsif mods != "0" %} - - [{{page.title}}]({{site.url}}/composer{{page.url}}.html) -{% endif %} -{% endif %} -{% endfor %} diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md index 6b601698c4..444a62f723 100644 --- a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md +++ b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md @@ -3,9 +3,9 @@ {% if page.index-order %} {% capture mods %}{{ page.index-order | modulo:100 }}{% endcapture %} {% if mods == "0" %} -- [{{ page.title }}]({{site.url}}{{page.url}}.html) +- [{{ page.title }}](../{{page.url}}.html) {% elsif mods != "0" %} - - [{{page.title}}]({{site.url}}{{page.url}}.html) + - [{{page.title}}](../{{page.url}}.html) {% endif %} {% endif %} {% endfor %} diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/businessnetworks.md b/packages/composer-website/jekylldocs/_includes/sidebars/businessnetworks.md deleted file mode 100644 index c66460ee59..0000000000 --- a/packages/composer-website/jekylldocs/_includes/sidebars/businessnetworks.md +++ /dev/null @@ -1,17 +0,0 @@ -- [Introduction](../introduction/introduction.html) -- [Installing](../installing/installing-index.html) -- [Tutorials](../tutorials/tutorials.html) -- [Developing Business Networks](../business-network/business-network-index.html) - - [What is a business network definition?](../business-network/businessnetworkdefinition.html) - - [Creating a business network definition](../business-network/bnd-create.html) - - [Deploying and updating](../business-network/bnd-deploy.html) - - [Emitting events](../business-network/publishing-events.html) - - [Testing](../business-network/testing.html) - - [Publishing to npm](../business-network/bnd-publish.html) - - [Querying Business Network Data](../business-network/query.html) -- [Developing Applications](../applications/applications-index.html) -- [Integrating Existing Systems](../integrating/integrating-index.html) -- [Managing and Operating](../managing/managingindex.html) -- [Diagnosing Problems](../problems/diagnostics.html) -- [Reference](../reference/reference-index.html) -- [Support](../support/index.html) diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/managing.md b/packages/composer-website/jekylldocs/_includes/sidebars/managing.md deleted file mode 100644 index 3c988fe04d..0000000000 --- a/packages/composer-website/jekylldocs/_includes/sidebars/managing.md +++ /dev/null @@ -1,18 +0,0 @@ -- [Introduction](../introduction/introduction.html) -- [Installing](../installing/installing-index.html) -- [Tutorials](../tutorials/tutorials.html) -- [Developing Business Networks](../business-network/business-network-index.html) -- [Developing Applications](../applications/applications-index.html) -- [Integrating Existing Systems](../integrating/integrating-index.html) -- [Managing and Operating](../managing/managingindex.html) - - [Participants and Identities](../managing/participantsandidentities.html) - - [Adding a participant](../managing/participant-add.html) - - [Issuing an identity to a participant](../managing/identity-issue.html) - - [Revoking an identity from a participant](../managing/identity-revoke.html) - - [Enabling OAuth using GitHub](../managing/github-oauth.html) - - [Enabling access control using the current participant](../managing/current-participant.html) - - [Updating {{site.data.conrefs.composer_full}}](../managing/updating-composer.html) - - [Connector Specific Information](../managing/connector-information.html) -- [Diagnosing Problems](../problems/diagnostics.html) -- [Reference](../reference/reference-index.html) -- [Support](../support/index.html) From 5fff62882620d409ac2811a63e8bfe465fd019f5 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Wed, 19 Jul 2017 11:56:21 +0100 Subject: [PATCH 08/14] last changes --- .../jekylldocs/managing/connector-information.md | 1 - packages/composer-website/jekylldocs/problems/diagnostics.md | 4 ++-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/composer-website/jekylldocs/managing/connector-information.md b/packages/composer-website/jekylldocs/managing/connector-information.md index fbc74caf10..425bb318d2 100644 --- a/packages/composer-website/jekylldocs/managing/connector-information.md +++ b/packages/composer-website/jekylldocs/managing/connector-information.md @@ -5,7 +5,6 @@ category: tasks section: managing sidebar: sidebars/managing.md excerpt: -index-order: 8 --- # Connector Specific Information diff --git a/packages/composer-website/jekylldocs/problems/diagnostics.md b/packages/composer-website/jekylldocs/problems/diagnostics.md index 962d713358..df1cfb2efb 100644 --- a/packages/composer-website/jekylldocs/problems/diagnostics.md +++ b/packages/composer-website/jekylldocs/problems/diagnostics.md @@ -14,7 +14,7 @@ Composer uses the Winston logging module by default - and will use the Config mo The config module does write out a warning, if there are no configuration files set. Eg. `WARNING: No configurations found in configuration directory`. This can be suppressed with an environment variable if you are happy with the defaults and don't wish to use config in your application. See more information [here](https://github.com/lorenwest/node-config/wiki/Environment-Variables#suppress_no_config_warning). - + # Diagnosing Problems If something should ever go wrong with an application, what should you do about getting diagnostics? From d22fac4222b67059711f596481f1f22fe4677170 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Wed, 19 Jul 2017 16:21:50 +0100 Subject: [PATCH 09/14] RC -> v1.0, network start, runtime install, --- .../_includes/sidebars/accordion-toc0.md | 4 +- .../jekylldocs/business-network/bnd-deploy.md | 8 +-- .../jekylldocs/business-network/query.md | 2 +- .../installing/development-tools.md | 4 +- .../installing/using-playground-locally.md | 10 +-- .../introduction/solution-architecture.md | 2 +- .../jekylldocs/problems/diagnostics.md | 2 +- .../jekylldocs/reference/acl_language.md | 10 ++- .../reference/composer.network.deploy.md | 14 +--- .../reference/composer.network.start.md | 67 +++++++++++++++++++ .../reference/composer.runtime.install.md | 34 ++++++++++ .../jekylldocs/reference/connectionprofile.md | 6 +- 12 files changed, 131 insertions(+), 32 deletions(-) create mode 100644 packages/composer-website/jekylldocs/reference/composer.network.start.md create mode 100644 packages/composer-website/jekylldocs/reference/composer.runtime.install.md diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md index 444a62f723..a127f49168 100644 --- a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md +++ b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md @@ -3,9 +3,9 @@ {% if page.index-order %} {% capture mods %}{{ page.index-order | modulo:100 }}{% endcapture %} {% if mods == "0" %} -- [{{ page.title }}](../{{page.url}}.html) +- [{{ page.title }}](..{{page.url}}.html) {% elsif mods != "0" %} - - [{{page.title}}](../{{page.url}}.html) + - [{{page.title}}](..{{page.url}}.html) {% endif %} {% endif %} {% endfor %} diff --git a/packages/composer-website/jekylldocs/business-network/bnd-deploy.md b/packages/composer-website/jekylldocs/business-network/bnd-deploy.md index 6d265947a6..3092871e2b 100644 --- a/packages/composer-website/jekylldocs/business-network/bnd-deploy.md +++ b/packages/composer-website/jekylldocs/business-network/bnd-deploy.md @@ -22,17 +22,17 @@ For example: To update the definition of an already deployed business network use the `composer network update` CLI command. -## Deploying business networks to {{site.data.conrefs.hlf_full}} RC 1 +## Deploying business networks to {{site.data.conrefs.hlf_full}} v1.0 -In {{site.data.conrefs.hlf_full}} v1.0 RC 1 peers now enforce the concepts of admins and members. Admin user's identities and crypto material must be available to the peer at deployment. To make that identity and its crypto material available, your must import it to your local `keyValStore` directory before deploying the business network. To import the identity, use the [`composer identity import` command](../reference/composer.identity.import.html). When importing an identity, you do not assign it a secret, however the `composer network deploy` command requires a secret. If you are using an imported identity, you can enter any value for the secret. +In {{site.data.conrefs.hlf_full}} v1.0 peers now enforce the concepts of admins and members. Admin user's identities and crypto material must be available to the peer at deployment. To make that identity and its crypto material available, your must import it to your local `keyValStore` directory before deploying the business network. To import the identity, use the [`composer identity import` command](../reference/composer.identity.import.html). When importing an identity, you do not assign it a secret, however the `composer network deploy` command requires a secret. If you are using an imported identity, you can enter any value for the secret. When connecting to the peer you must use an identity (certificate) where the Common Name (CN) contains the text `admin`, for example, `PeerAdmin`, `myadmin`, `Admin` or `AdminPeer` are all valid Common Names. Peers in different organizations may have different admin users. Only an admin user of peer's organization will be able to deploy a business network to their peers. -Due to many breaking API changes between {{site.data.conrefs.hlf_full}} alpha 1 and {{site.data.conrefs.hlf_full}} v1.0 RC 1, {{site.data.conrefs.composer_full}} only supports the RC 1 level and cannot support older versions of {{site.data.conrefs.hlf_full}} v1.0 (e.g. alpha 1). +Due to many breaking API changes between {{site.data.conrefs.hlf_full}} alpha 1 and {{site.data.conrefs.hlf_full}} v1.0, {{site.data.conrefs.composer_full}} only supports the {{site.data.conrefs.hlf_full}} v1.0 and cannot support older versions of {{site.data.conrefs.hlf_full}} v1.0 (e.g. alpha 1). ### Deploying business networks using Playground locally -When deploying a business network to {{site.data.conrefs.hlf_full}} v1.0 RC 1 using the Playground locally, you must follow the process above to connect using the peer admin identity. However, in order to create identities and interact with your business network in the Playground, you must use the certificate authority admin identity. +When deploying a business network to {{site.data.conrefs.hlf_full}} v1.0 using the Playground locally, you must follow the process above to connect using the peer admin identity. However, in order to create identities and interact with your business network in the Playground, you must use the certificate authority admin identity. ## References diff --git a/packages/composer-website/jekylldocs/business-network/query.md b/packages/composer-website/jekylldocs/business-network/query.md index 973cc3bd80..fb741d0193 100644 --- a/packages/composer-website/jekylldocs/business-network/query.md +++ b/packages/composer-website/jekylldocs/business-network/query.md @@ -16,7 +16,7 @@ Queries are used to return data about the blockchain world-state; for example, y Queries are an optional component of a business network definition, written in a single query file (`queries.qry`). -Note: Queries are supported by the {{site.data.conrefs.hlf_full}} v1.0, embedded and web runtimes. The query support for the embedded and web runtimes currently has limitations and is unstable. When using the {{site.data.conrefs.hlf_full}} v1.0-RC runtime {{site.data.conrefs.hlf_full}} must be configured to use CouchDB persistence. Queries are **not** supported with the {{site.data.conrefs.hlf_full}} v0.6 runtime. +Note: Queries are supported by the {{site.data.conrefs.hlf_full}} v1.0, embedded and web runtimes. The query support for the embedded and web runtimes currently has limitations and is unstable. When using the {{site.data.conrefs.hlf_full}} v1.0 runtime {{site.data.conrefs.hlf_full}} must be configured to use CouchDB persistence. Queries are **not** supported with the {{site.data.conrefs.hlf_full}} v0.6 runtime. ## Writing Queries diff --git a/packages/composer-website/jekylldocs/installing/development-tools.md b/packages/composer-website/jekylldocs/installing/development-tools.md index df82b90a88..c93827e749 100644 --- a/packages/composer-website/jekylldocs/installing/development-tools.md +++ b/packages/composer-website/jekylldocs/installing/development-tools.md @@ -12,7 +12,7 @@ index-order: 203 Follow the instructions below to get the required {{site.data.conrefs.composer_full}} development tools and stand up a {{site.data.conrefs.hlf_full}}. -There are two version of {{site.data.conrefs.hlf_full}}: v0.6 and v1.0-RC. The default is for v1.0-RC and we suggest this is the one you use. +There are two version of {{site.data.conrefs.hlf_full}}: v0.6 and v1.0. The default is for v1.0 and we suggest this is the one you use. ## Before you begin @@ -107,7 +107,7 @@ docker rmi $(docker images dev-* -q) export FABRIC_VERSION=hlfv0.6 - {{site.data.conrefs.hlf_full}} v1.0-RC is the default, but to 'unset' the v0.6, or to be explicit in using v1 use this command + {{site.data.conrefs.hlf_full}} v1.0 is the default, but to 'unset' the v0.6, or to be explicit in using v1 use this command export FABRIC_VERSION=hlfv1 diff --git a/packages/composer-website/jekylldocs/installing/using-playground-locally.md b/packages/composer-website/jekylldocs/installing/using-playground-locally.md index b888a29c6b..45ee487658 100644 --- a/packages/composer-website/jekylldocs/installing/using-playground-locally.md +++ b/packages/composer-website/jekylldocs/installing/using-playground-locally.md @@ -10,7 +10,7 @@ index-order: 202 # Installing and running {{site.data.conrefs.composer_full}} Playground locally -This tutorial will take you through how to install and run the {{site.data.conrefs.composer_full}} Playground on your local machine. It also creates an instance of {{site.data.conrefs.hlf_full}} v1.0 RC 1. +This tutorial will take you through how to install and run the {{site.data.conrefs.composer_full}} Playground on your local machine. It also creates an instance of {{site.data.conrefs.hlf_full}} v1.0. {{site.data.conrefs.composer_full}} Playground can also be used in a "browser only" mode, without a running instance of {{site.data.conrefs.hlf_full}}. When used in this mode, all the functionality of {{site.data.conrefs.composer_full}} Playground is available, but all of the data (business networks, assets, participants, and transactions) is persisted into browser local storage. @@ -39,17 +39,17 @@ docker images -aq | xargs docker rmi -f 2. Access your local {{site.data.conrefs.composer_full}} Playground by clicking this link: http://localhost:8080. -## Deploying business networks to {{site.data.conrefs.hlf_full}} RC +## Deploying business networks to {{site.data.conrefs.hlf_full}} v1.0 -In {{site.data.conrefs.hlf_full}} RC peers now enforce the concepts of admins and members. Admin user's identities and crypto material must be available to the peer at deployment. To make that identity and its crypto material available, your must import it to your local `keyValStore` directory before deploying the business network. To import the identity, use the [`composer identity import` command](../reference/composer.identity.import.html). When importing an identity, you do not assign it a secret, however the `composer network deploy` command requires a secret. If you are using an imported identity, you can enter any value for the secret. +In {{site.data.conrefs.hlf_full}} v1.0 peers now enforce the concepts of admins and members. Admin user's identities and crypto material must be available to the peer at deployment. To make that identity and its crypto material available, your must import it to your local `keyValStore` directory before deploying the business network. To import the identity, use the [`composer identity import` command](../reference/composer.identity.import.html). When importing an identity, you do not assign it a secret, however the `composer network deploy` command requires a secret. If you are using an imported identity, you can enter any value for the secret. When connecting to the peer you must use an identity (certificate) where the Common Name (CN) contains the text `admin`, for example, `PeerAdmin`, `myadmin`, `Admin` or `AdminPeer` are all valid Common Names. Peers in different organizations may have different admin users. Only an admin user of peer's organization will be able to deploy a business network to their peers. -Due to many breaking API changes between {{site.data.conrefs.hlf_full}} v1.0 alpha 1 and {{site.data.conrefs.hlf_full}} v1.0 RC, {{site.data.conrefs.composer_full}} only supports the RC level and cannot support older versions of {{site.data.conrefs.hlf_full}} v1.0 (e.g. alpha 1). +Due to many breaking API changes between {{site.data.conrefs.hlf_full}} v1.0 alpha 1 and {{site.data.conrefs.hlf_full}} v1.0, {{site.data.conrefs.composer_full}} only supports {{site.data.conrefs.hlf_full}} v1.0 and cannot support older versions of {{site.data.conrefs.hlf_full}} v1.0 (e.g. alpha 1). ### Deploying business networks using Playground locally -When deploying a business network to {{site.data.conrefs.hlf_full}} RC using the Playground locally, you must follow the process above to connect using the peer admin identity. However, in order to create identities and interact with your business network in the Playground, you must use the certificate authority admin identity. +When deploying a business network to {{site.data.conrefs.hlf_full}} v1.0 using the Playground locally, you must follow the process above to connect using the peer admin identity. However, in order to create identities and interact with your business network in the Playground, you must use the certificate authority admin identity. --- diff --git a/packages/composer-website/jekylldocs/introduction/solution-architecture.md b/packages/composer-website/jekylldocs/introduction/solution-architecture.md index 7ff26fdab8..40fe77b412 100644 --- a/packages/composer-website/jekylldocs/introduction/solution-architecture.md +++ b/packages/composer-website/jekylldocs/introduction/solution-architecture.md @@ -30,7 +30,7 @@ index-order: 102 {{site.data.conrefs.composer_full}} has been designed to support different pluggable runtimes, and currently has four runtime implementations: * {{site.data.conrefs.hlf_full}} version 0.6. State is stored on the distributed ledger. -* {{site.data.conrefs.hlf_full}} version 1.0 RC 1. State is stored on the distributed ledger. +* {{site.data.conrefs.hlf_full}} version 1.0. State is stored on the distributed ledger. * Web, which executes within a web page, and is used by Playground. State is stored in browser local storage. * Embedded, which executes within a Node.js process, and is used primarily for unit testing business logic. State is stored in an in-memory key-value store. diff --git a/packages/composer-website/jekylldocs/problems/diagnostics.md b/packages/composer-website/jekylldocs/problems/diagnostics.md index df1cfb2efb..d95f18a02a 100644 --- a/packages/composer-website/jekylldocs/problems/diagnostics.md +++ b/packages/composer-website/jekylldocs/problems/diagnostics.md @@ -34,7 +34,7 @@ The config module does write out a warning, if there are no configuration files - advice: set loglevel to debug on deploy because if deploy breaks you want the logs. -## {{site.data.conrefs.hlf_full}} RC1 - David +## {{site.data.conrefs.hlf_full}} v1.0 - David --> diff --git a/packages/composer-website/jekylldocs/reference/acl_language.md b/packages/composer-website/jekylldocs/reference/acl_language.md index d1c3a148f6..8d20801b6b 100644 --- a/packages/composer-website/jekylldocs/reference/acl_language.md +++ b/packages/composer-website/jekylldocs/reference/acl_language.md @@ -77,7 +77,15 @@ Network access is required to use the CREATE operation on participants or the UP ### Granting network access control -Network access is granted using the system namespace. The system namespace is always `org.hyperledger.composer.system`. +Network access is granted using the system namespace. The system namespace is always `org.hyperledger.composer.system.Network`. The following access control rules gives the **networkControl** participant the authority to use all operations with network commands. + +rule networkControlPermission { + description: "networkControl can access network commands" + participant: "org.acme.vehicle.auction.networkControl" + operation: ALL + resource: "org.hyperledger.composer.system.Network" + action: ALLOW +} The following access control rule will give all participants access to all operations and commands in the business network, including network access and business access. diff --git a/packages/composer-website/jekylldocs/reference/composer.network.deploy.md b/packages/composer-website/jekylldocs/reference/composer.network.deploy.md index afb3417ef5..fd93e06c54 100644 --- a/packages/composer-website/jekylldocs/reference/composer.network.deploy.md +++ b/packages/composer-website/jekylldocs/reference/composer.network.deploy.md @@ -10,7 +10,7 @@ excerpt: Composer Network Deploy CLI --- -The `composer network deploy` utility is used to deploy a business network archive from local disk to a Hyperledger Fabric runtime. +The `composer network deploy` utility is used to deploy a business network archive from local disk to a {{site.data.conrefs.hlf_full}} v1.0 runtime. ``` composer network deploy -a -i -s @@ -43,34 +43,25 @@ Command completed successfully. ## {{site.data.conrefs.hlf_full}} Endorsement Policies -The `--option, -o` option and the `--optionsFile, -O` option allow connection specific information to be sent. {{site.data.conrefs.hlf_full}} RC endorsement policies can be sent using the `-o` and `-O` options in several ways. +The `--option, -o` option and the `--optionsFile, -O` option allow connection specific information to be sent. {{site.data.conrefs.hlf_full}} v1.0 endorsement policies can be sent using the `-o` and `-O` options in several ways. - Using the `-o` option, the endorsement policy can be sent as a single-line JSON string as follows: -<<<<<<< HEAD - composer network deploy -o endorsementPolicy='{"endorsementPolicy": {"identities": [.... }' -======= composer network deploy -o endorsementPolicy='{"identities": [.... }' ->>>>>>> hyperledger/master - Using the `-o` option, the endorsement policy can be sent as a file path as follows: composer network deploy -o endorsementPolicyFile=/path/to/file/endorsementPolicy.json -<<<<<<< HEAD -======= In this case, the endorsement policy file should follow this format: {"identities":[...], "policy": {...}} ->>>>>>> hyperledger/master - Using the `-O` option, the endorsement policy can be sent as a file path as follows: composer network deploy -O /path/to/file/options.json -<<<<<<< HEAD -======= In this case, the options file should follow this format: {"endorsementPolicy": {"Identities": [...]. @@ -79,5 +70,4 @@ The `--option, -o` option and the `--optionsFile, -O` option allow connection sp "someOtherOption": "A Value" } ->>>>>>> hyperledger/master For more information on writing {{site.data.conrefs.hlf_full}} endorsement policies, see the [{{site.data.conrefs.hlf_full}} node SDK documentation](https://fabric-sdk-node.github.io/global.html#Policy). diff --git a/packages/composer-website/jekylldocs/reference/composer.network.start.md b/packages/composer-website/jekylldocs/reference/composer.network.start.md new file mode 100644 index 0000000000..1f70abba8e --- /dev/null +++ b/packages/composer-website/jekylldocs/reference/composer.network.start.md @@ -0,0 +1,67 @@ +--- +layout: default +title: Hyperledger Composer Network Start CLI +section: reference-command +sidebar: sidebars/accordion-toc0.md +excerpt: Composer Network Start +--- + +# {{site.data.conrefs.composer_full}} Network Start + +--- + +The `composer network start` utility is used to deploy a business network archive from local disk to blockchain network peers. + +_Please Note_: You **must** first install the {{site.data.conrefs.composer_full}} runtime to the blockchain network peers by using the `composer runtime install` command. The business network name specified in the `composer runtime install` command must be the same as the business network name specified in the `composer network start` command. + +``` +composer network start -a -i -s +``` + +### Options +``` +composer network start [options] + +Options: + --help Show help [boolean] + -v, --version Show version number [boolean] + --archiveFile, -a The business network archive file name [string] [required] + --connectionProfileName, -p The connection profile name [string] + --loglevel, -l The initial loglevel to set (INFO|WARNING|ERROR|DEBUG) [string] + --option, -o Options that are specific specific to connection. Multiple options are specified by repeating this option [string] + --optionsFile, -O A file containing options that are specific to connection [string] + --startId, -i The id of the user permitted to start a network [string] [required] + --startSecret, -s The secret of the user permitted to start a network, if required [string] +``` + + +## {{site.data.conrefs.hlf_full}} Endorsement Policies + +The `--option, -o` option and the `--optionsFile, -O` option allow connection specific information to be sent. {{site.data.conrefs.hlf_full}} endorsement policies can be sent using the `-o` and `-O` options in several ways. + +- Using the `-o` option, the endorsement policy can be sent as a single-line JSON string as follows: + + composer network deploy -o endorsementPolicy='{"identities": [.... }' + +- Using the `-o` option, the endorsement policy can be sent as a file path as follows: + + composer network deploy -o endorsementPolicyFile=/path/to/file/endorsementPolicy.json + + In this case, the endorsement policy file should follow this format: + + {"identities":[...], + "policy": {...}} + +- Using the `-O` option, the endorsement policy can be sent as a file path as follows: + + composer network deploy -O /path/to/file/options.json + + In this case, the options file should follow this format: + + {"endorsementPolicy": {"Identities": [...]. + "policy: {...}" + }, + "someOtherOption": "A Value" + } + +For more information on writing {{site.data.conrefs.hlf_full}} endorsement policies, see the [{{site.data.conrefs.hlf_full}} node SDK documentation](https://fabric-sdk-node.github.io/global.html#Policy). diff --git a/packages/composer-website/jekylldocs/reference/composer.runtime.install.md b/packages/composer-website/jekylldocs/reference/composer.runtime.install.md new file mode 100644 index 0000000000..3fdce89cc2 --- /dev/null +++ b/packages/composer-website/jekylldocs/reference/composer.runtime.install.md @@ -0,0 +1,34 @@ +--- +layout: default +title: Hyperledger Composer Runtime Start CLI +section: reference-command +sidebar: sidebars/accordion-toc0.md +excerpt: Composer Runtime Install +--- + +# {{site.data.conrefs.composer_full}} Runtime Install + +--- + +The `composer runtime install` command is used to install the {{site.data.conrefs.composer_full}} runtime on the endorsing peers of the blockchain network you are connecting to. This command must be run before the `composer network start` command. + +_Please Note_: The `--businessNetworkName, -n` option **must** contain the same name as the business network name you intend to run on the peers. Only business networks with names matching the `--businessNetworkName, -n` option given in this command will successfully run. + +``` +composer runtime install -n -p -i -s +``` + +### Options +``` +composer runtime install [options] + +Options: + --help Show help [boolean] + -v, --version Show version number [boolean] + --businessNetworkName, -n The business network name [string] [required] + --connectionProfileName, -p The connection profile name [string] [required] + --option, -o Options that are specific specific to connection. Multiple options are specified by repeating this option [string] + --optionsFile, -O A file containing options that are specific to connection [string] + --installId, -i The id of the user permitted to install the runtime [string] [required] + --installSecret, -s The secret of the user permitted to install the runtime, if required [string] +``` diff --git a/packages/composer-website/jekylldocs/reference/connectionprofile.md b/packages/composer-website/jekylldocs/reference/connectionprofile.md index 1b819969c7..b13f1160ee 100644 --- a/packages/composer-website/jekylldocs/reference/connectionprofile.md +++ b/packages/composer-website/jekylldocs/reference/connectionprofile.md @@ -4,7 +4,7 @@ title: Connection Profiles section: reference index-order: 906 sidebar: sidebars/accordion-toc0.md -excerpt: In order to connect your business network to a fabric, you must [**define a connection profile**](./connectionprofile.html). Connection profiles contain the information necessary to connect to a fabric. This topic contains example connection profiles for Hyperledger Fabric v0.6 and RC1. +excerpt: In order to connect your business network to a fabric, you must [**define a connection profile**](./connectionprofile.html). Connection profiles contain the information necessary to connect to a fabric. This topic contains example connection profiles for Hyperledger Fabric v0.6 and v1.0. --- # Connection Profiles @@ -36,7 +36,7 @@ A Connection Profile is used by {{site.data.conrefs.composer_full}} to connect t "peerURL": , "eventHubURL": } - If you are creating a connection profile for {{site.data.conrefs.hlf_full}} v1.0 RC, use the following format: + If you are creating a connection profile for {{site.data.conrefs.hlf_full}} v1.0, use the following format: { "type": "hlfv1", @@ -106,7 +106,7 @@ A Connection Profile is used by {{site.data.conrefs.composer_full}} to connect t "maxRecvSize": 15 } - - `type` defines the version of {{site.data.conrefs.hlf_full}} that you will connect to. To connect to {{site.data.conrefs.hlf_full}} v1.0-RC is must be `hlfv1`. + - `type` defines the version of {{site.data.conrefs.hlf_full}} that you will connect to. To connect to {{site.data.conrefs.hlf_full}} v1.0 is must be `hlfv1`. - `orderers` is an array of objects which describe the orderes to communicate with. Within `orderers`, you must define the `url` of each orderer. If you are connecting via TLS, all `url` properties in your connection profile must begin with `grpcs://` and must also contain the correct TLS certificate in the `cert` property. - `peers` is an array of objects describing the peers to communicate with. Each `peer` must have a defined `requestURL` and a defined `eventURL`. If you are connecting using TLS, each `peer` must also have the correct TLS certificate in the `cert` property. From 65bc6b263ba293c7b1e2d875885b0fadc3215736 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Wed, 19 Jul 2017 16:28:24 +0100 Subject: [PATCH 10/14] Adding links to new commands --- .../composer-website/jekylldocs/reference/commands.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/composer-website/jekylldocs/reference/commands.md b/packages/composer-website/jekylldocs/reference/commands.md index 3acd468337..e7ab61e84c 100644 --- a/packages/composer-website/jekylldocs/reference/commands.md +++ b/packages/composer-website/jekylldocs/reference/commands.md @@ -56,6 +56,14 @@ Test the connection to a deployed a Business Network: [composer network ping](./ Update a deployed Business Network: [composer network update](./composer.network.update.md) +`composer network start` + +Deploy a business network archive to a peer that already has the {{site.data.conrefs.composer_full}} runtime installed: [composer network start](./composer.network.start.md) + +`composer runtime install` + +Install the {{site.data.conrefs.composer_full}} runtime to a blockchain peer: [composer runtime install](./composer.runtime.install.md) + ## Participant and Identity management `composer participant add` From fd85a0a128e46126c858aa71c8528f2644ee6d78 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Wed, 19 Jul 2017 17:22:32 +0100 Subject: [PATCH 11/14] Update for modelling lang doc --- .../jekylldocs/reference/cto_language.md | 53 ++----------------- 1 file changed, 5 insertions(+), 48 deletions(-) diff --git a/packages/composer-website/jekylldocs/reference/cto_language.md b/packages/composer-website/jekylldocs/reference/cto_language.md index ed7b6c62b3..05c61616f6 100644 --- a/packages/composer-website/jekylldocs/reference/cto_language.md +++ b/packages/composer-website/jekylldocs/reference/cto_language.md @@ -51,7 +51,6 @@ Resources in {{site.data.conrefs.composer_full}} include: - Assets, Participants, Transactions, and Events. - Enumerated Types. - Concepts. -- Assets, Participants and Transactions are class definitions. The concepts of Asset, Participant and Transaction may be considered to be different stereotypes of the class type. @@ -60,7 +59,7 @@ A class in {{site.data.conrefs.composer_full}} is referred to as a Resource Defi A resource definition has the following properties: 1. A namespace defined by the namespace of its parent file. The namespace of a `.cto` file implicitly applies to all resources created in it. -2. A name, for example `Vehicle`. If the resource is an asset or participant, it is followed by it's identifying field, if the resource is an event or transaction, the identifying field is set automatically. In this example, the asset is named `Vehicle` and the identifying field is `vin`. +2. A name, for example `Vehicle`, and an identifying field, for example, `vin`. If the resource is an asset or participant, the name is followed by the identifying field, if the resource is an event or transaction, the identifying field is set automatically. In this example, the asset is named `Vehicle` and the identifying field is `vin`. ``` /** @@ -71,8 +70,7 @@ A resource definition has the following properties: } ``` -3. An identifying field. For example, the Vehicle asset might be identified by the `vin` field. Identifying fields must be Strings. *Note*: Events and transactions do not require an identifying field to be set, the identifying fields `eventId` and `transactionId` will be created automatically. -4. An optional super-type, which the resource definition extends. The resource will take all properties and fields required by the super-type and add any additional properties or fields from its own definition. +3. An optional super-type, which the resource definition extends. The resource will take all properties and fields required by the super-type and add any additional properties or fields from its own definition. ``` /** @@ -84,7 +82,7 @@ A resource definition has the following properties: } ``` -5. An optional 'abstract' declaration, to indicate that this type cannot be created. Abstract resources can be used as a basis for other classes to extend. Extensions of abstract classes do not inherit the abstract status. For example, the asset `Vehicle` defined above should never be created, as there should be more specific asset classes defined to extend it. +4. An optional 'abstract' declaration, to indicate that this type cannot be created. Abstract resources can be used as a basis for other classes to extend. Extensions of abstract classes do not inherit the abstract status. For example, the asset `Vehicle` defined above should never be created, as there should be more specific asset classes defined to extend it. ``` /** @@ -95,8 +93,8 @@ A resource definition has the following properties: } ``` -6. A set of named properties. The properties must be named, and the primitive data type defined.The properties and their data are owned by each resource, for example, a `Car` asset has a `vin`, and a `model` property, both of which are strings. -7. A set of relationships to other Composer types that are not owned by the resource but that may be referenced from the resource. Relationships are unidirectional. +5. A set of named properties. The properties must be named, and the primitive data type defined.The properties and their data are owned by each resource, for example, a `Car` asset has a `vin`, and a `model` property, both of which are strings. +6. A set of relationships to other Composer types that are not owned by the resource but that may be referenced from the resource. Relationships are unidirectional. ``` /** @@ -109,47 +107,6 @@ A resource definition has the following properties: } ``` - ``` - /** - * A Farmer participant - */ - participant Farmer identified by farmerId { - o String farmerId - o String firstName - o String lastName - o String address1 - o String address2 - o String county - o String postcode - } - ``` - - ``` - /** - * An abstract event type - */ - event BasicEvent { - } - ``` - - ``` - /** - * An abstract transaction type for animal movements - */ - abstract transaction AnimalMovement { - --> Animal animal - } - ``` - - ``` - /** - * A transaction type for an animal leaving a farm - */ - transaction AnimalMovementDeparture extends AnimalMovement { - --> Field departureField - } - ``` - ### Declarations of enumerated types Enumerated types are to define the potential content of properties of other resources. By using enumerated types, the expected content in a field can be restricted and controlled, reducing unexpected data. The following enumerated type declaration contains a list of roles. From 9c7b51d66d34f796c7e6fb4209565d1cdc24832c Mon Sep 17 00:00:00 2001 From: EdProsser Date: Wed, 19 Jul 2017 17:54:02 +0100 Subject: [PATCH 12/14] hyper ledger fabric endorsing peer --- packages/composer-website/jekylldocs/reference/commands.md | 4 ++-- .../jekylldocs/reference/composer.network.start.md | 4 ++-- .../jekylldocs/reference/composer.runtime.install.md | 4 ++-- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/packages/composer-website/jekylldocs/reference/commands.md b/packages/composer-website/jekylldocs/reference/commands.md index e7ab61e84c..37dc2043f9 100644 --- a/packages/composer-website/jekylldocs/reference/commands.md +++ b/packages/composer-website/jekylldocs/reference/commands.md @@ -58,11 +58,11 @@ Update a deployed Business Network: [composer network update](./composer.network `composer network start` -Deploy a business network archive to a peer that already has the {{site.data.conrefs.composer_full}} runtime installed: [composer network start](./composer.network.start.md) +Deploy a business network archive to a {{site.data.conrefs.hlf_full}} endorsing peer that already has the {{site.data.conrefs.composer_full}} runtime installed: [composer network start](./composer.network.start.md) `composer runtime install` -Install the {{site.data.conrefs.composer_full}} runtime to a blockchain peer: [composer runtime install](./composer.runtime.install.md) +Install the {{site.data.conrefs.composer_full}} runtime to a {{site.data.conrefs.hlf_full}} endorsing peer: [composer runtime install](./composer.runtime.install.md) ## Participant and Identity management diff --git a/packages/composer-website/jekylldocs/reference/composer.network.start.md b/packages/composer-website/jekylldocs/reference/composer.network.start.md index 1f70abba8e..f364f706e6 100644 --- a/packages/composer-website/jekylldocs/reference/composer.network.start.md +++ b/packages/composer-website/jekylldocs/reference/composer.network.start.md @@ -10,9 +10,9 @@ excerpt: Composer Network Start --- -The `composer network start` utility is used to deploy a business network archive from local disk to blockchain network peers. +The `composer network start` utility is used to deploy a business network archive from local disk to the {{site.data.conrefs.hlf_full}} endorsing peers. -_Please Note_: You **must** first install the {{site.data.conrefs.composer_full}} runtime to the blockchain network peers by using the `composer runtime install` command. The business network name specified in the `composer runtime install` command must be the same as the business network name specified in the `composer network start` command. +_Please Note_: You **must** first install the {{site.data.conrefs.composer_full}} runtime to the {{site.data.conrefs.hlf_full}} endorsing peers by using the `composer runtime install` command. The business network name specified in the `composer runtime install` command must be the same as the business network name specified in the `composer network start` command. ``` composer network start -a -i -s diff --git a/packages/composer-website/jekylldocs/reference/composer.runtime.install.md b/packages/composer-website/jekylldocs/reference/composer.runtime.install.md index 3fdce89cc2..633403877c 100644 --- a/packages/composer-website/jekylldocs/reference/composer.runtime.install.md +++ b/packages/composer-website/jekylldocs/reference/composer.runtime.install.md @@ -10,9 +10,9 @@ excerpt: Composer Runtime Install --- -The `composer runtime install` command is used to install the {{site.data.conrefs.composer_full}} runtime on the endorsing peers of the blockchain network you are connecting to. This command must be run before the `composer network start` command. +The `composer runtime install` command is used to install the {{site.data.conrefs.composer_full}} runtime on the {{site.data.conrefs.hlf_full}} endorsing peers of the blockchain network you are connecting to. This command must be run before the `composer network start` command. -_Please Note_: The `--businessNetworkName, -n` option **must** contain the same name as the business network name you intend to run on the peers. Only business networks with names matching the `--businessNetworkName, -n` option given in this command will successfully run. +_Please Note_: The `--businessNetworkName, -n` option **must** contain the same name as the business network name you intend to run on the {{site.data.conrefs.hlf_full}} endorsing peers. Only business networks with names matching the `--businessNetworkName, -n` option given in this command will successfully run. ``` composer runtime install -n -p -i -s From 7291287db48065044828ff9567de70f423b5be60 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Thu, 20 Jul 2017 17:55:42 +0100 Subject: [PATCH 13/14] Sort out the Doc titles. --- .../jekylldocs/installing/installing-index.md | 4 ++-- .../jekylldocs/integrating/integrating-index.md | 4 ++-- packages/composer-website/jekylldocs/managing/github-oauth.md | 2 +- .../composer-website/jekylldocs/managing/managingindex.md | 4 ++-- .../composer-website/jekylldocs/reference/reference-index.md | 4 ++-- packages/composer-website/jekylldocs/tutorials/tutorials.md | 2 +- 6 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/composer-website/jekylldocs/installing/installing-index.md b/packages/composer-website/jekylldocs/installing/installing-index.md index 1faca292e8..0f09336700 100644 --- a/packages/composer-website/jekylldocs/installing/installing-index.md +++ b/packages/composer-website/jekylldocs/installing/installing-index.md @@ -1,6 +1,6 @@ --- layout: default -title: Installing Index +title: Installing Hyperledger Composer category: tasks sidebar: sidebars/accordion-toc0.md section: installing @@ -14,7 +14,7 @@ excerpt: Tutorials {% assign sorted = site.pages | sort: 'index-order' %} {% for page in sorted %} -{% if page.section == 'installing' and page.title != "Installing Index" %} +{% if page.section == 'installing' and page.title != "Installing" %} ### {{ page.title }} {{ page.excerpt }} {% endif %} diff --git a/packages/composer-website/jekylldocs/integrating/integrating-index.md b/packages/composer-website/jekylldocs/integrating/integrating-index.md index c09539f579..24d3f48a35 100644 --- a/packages/composer-website/jekylldocs/integrating/integrating-index.md +++ b/packages/composer-website/jekylldocs/integrating/integrating-index.md @@ -1,6 +1,6 @@ --- layout: default -title: Integrating Index +title: Integrating Existing Systems category: concepts section: integrating index-order: 600 @@ -16,7 +16,7 @@ excerpt: How to create a new Connection Profile {% assign sorted = site.pages | sort: 'index-order' %} {% for page in sorted %} -{% if page.section == 'integrating' and page.title != "Integrating Index" %} +{% if page.section == 'integrating' and page.title != "Integrating Existing Systems" %} ### {{ page.title }} {{ page.excerpt }} {% endif %} diff --git a/packages/composer-website/jekylldocs/managing/github-oauth.md b/packages/composer-website/jekylldocs/managing/github-oauth.md index 401d9ab772..eb6b2b3b61 100644 --- a/packages/composer-website/jekylldocs/managing/github-oauth.md +++ b/packages/composer-website/jekylldocs/managing/github-oauth.md @@ -1,6 +1,6 @@ --- layout: default -title: Enabling Playground OAuth with GitHub +title: Enabling playground OAuth with GitHub category: tasks section: managing sidebar: sidebars/accordion-toc0.md diff --git a/packages/composer-website/jekylldocs/managing/managingindex.md b/packages/composer-website/jekylldocs/managing/managingindex.md index 1e8f06b072..2de89ec37f 100644 --- a/packages/composer-website/jekylldocs/managing/managingindex.md +++ b/packages/composer-website/jekylldocs/managing/managingindex.md @@ -1,6 +1,6 @@ --- layout: default -title: Managing Index +title: Managing a Deployed Business Network category: concepts section: managing index-order: 700 @@ -12,7 +12,7 @@ excerpt: "Managing your {{site.data.conrefs.composer_full}}" {% assign sorted = site.pages | sort: 'index-order' %} {% for page in sorted %} -{% if page.section == 'managing' and page.title != "Managing Index" %} +{% if page.section == 'managing' and page.title != "Managing a Deployed Business Network" %} ### {{ page.title }} {{ page.excerpt }} {% endif %} diff --git a/packages/composer-website/jekylldocs/reference/reference-index.md b/packages/composer-website/jekylldocs/reference/reference-index.md index 90eef32e4a..eb1774bc26 100644 --- a/packages/composer-website/jekylldocs/reference/reference-index.md +++ b/packages/composer-website/jekylldocs/reference/reference-index.md @@ -1,6 +1,6 @@ --- layout: default -title: Reference Index +title: Reference section: reference index-order: 900 sidebar: sidebars/accordion-toc0.md @@ -15,7 +15,7 @@ The {{site.data.conrefs.composer_full}} reference material contains a number of {% assign sorted = site.pages | sort: 'index-order' %} {% for page in sorted %} -{% if page.section == 'reference' and page.title != "Reference Index" or page.exception == 'API' %} +{% if page.section == 'reference' and page.title != "Reference" or page.exception == 'API' %} ### {{ page.title }} {{ page.excerpt }} {% endif %} diff --git a/packages/composer-website/jekylldocs/tutorials/tutorials.md b/packages/composer-website/jekylldocs/tutorials/tutorials.md index 8d91c1d5bc..a32390f042 100644 --- a/packages/composer-website/jekylldocs/tutorials/tutorials.md +++ b/packages/composer-website/jekylldocs/tutorials/tutorials.md @@ -1,6 +1,6 @@ --- layout: default -title: Tutorials Index +title: Tutorials category: tutorials section: tutorials sidebar: sidebars/accordion-toc0.md From 8646954d23aa03e8fea1120a87f9a98f1b5a1ae1 Mon Sep 17 00:00:00 2001 From: EdProsser Date: Mon, 24 Jul 2017 16:20:00 +0100 Subject: [PATCH 14/14] Support link fixes, API link fixes. --- .../composer-website/jekylldocs/_includes/indexnavbar.html | 2 +- packages/composer-website/jekylldocs/_includes/navbar.html | 2 +- .../jekylldocs/_includes/sidebars/accordion-toc0.md | 6 ++++-- packages/composer-website/jekylldocs/index.html | 2 +- .../jekylldocs/installing/using-playground-locally.md | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/packages/composer-website/jekylldocs/_includes/indexnavbar.html b/packages/composer-website/jekylldocs/_includes/indexnavbar.html index e6e491ae50..ad48b3b5ca 100644 --- a/packages/composer-website/jekylldocs/_includes/indexnavbar.html +++ b/packages/composer-website/jekylldocs/_includes/indexnavbar.html @@ -8,7 +8,7 @@
  • Tutorials
  • Docs
  • -
  • Community
  • +
  • Community
  • diff --git a/packages/composer-website/jekylldocs/_includes/navbar.html b/packages/composer-website/jekylldocs/_includes/navbar.html index 17d05ee69b..f3089efe0a 100644 --- a/packages/composer-website/jekylldocs/_includes/navbar.html +++ b/packages/composer-website/jekylldocs/_includes/navbar.html @@ -13,7 +13,7 @@ --> Tutorials Docs - Community + Community diff --git a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md index a127f49168..5077d64c02 100644 --- a/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md +++ b/packages/composer-website/jekylldocs/_includes/sidebars/accordion-toc0.md @@ -2,10 +2,12 @@ {% for page in sorted %} {% if page.index-order %} {% capture mods %}{{ page.index-order | modulo:100 }}{% endcapture %} -{% if mods == "0" %} +{% if mods == "0" and page.exception == nil %} - [{{ page.title }}](..{{page.url}}.html) -{% elsif mods != "0" %} +{% elsif mods != "0" and page.exception == nil %} - [{{page.title}}](..{{page.url}}.html) +{% elsif page.title == "API Documentation" page.exception == API %} + - [API Documentation](../jsdoc/index.html) {% endif %} {% endif %} {% endfor %} diff --git a/packages/composer-website/jekylldocs/index.html b/packages/composer-website/jekylldocs/index.html index 478c8efefa..41fc664182 100644 --- a/packages/composer-website/jekylldocs/index.html +++ b/packages/composer-website/jekylldocs/index.html @@ -91,7 +91,7 @@

    Calls happen every Thursday.

    chat.hyperledger.org

    -

    Visit the community page for more information.

    +

    Visit the community page for more information.

    diff --git a/packages/composer-website/jekylldocs/installing/using-playground-locally.md b/packages/composer-website/jekylldocs/installing/using-playground-locally.md index 45ee487658..2824f84f6e 100644 --- a/packages/composer-website/jekylldocs/installing/using-playground-locally.md +++ b/packages/composer-website/jekylldocs/installing/using-playground-locally.md @@ -36,7 +36,7 @@ docker images -aq | xargs docker rmi -f curl -sSL https://hyperledger.github.io/composer/install-hlfv1.sh | bash -2. Access your local {{site.data.conrefs.composer_full}} Playground by clicking this link: http://localhost:8080. +2. Access your local {{site.data.conrefs.composer_full}} Playground by clicking this link: http://localhost:8080. *Please note*: Private browsing is not supported when running the Playground locally. ## Deploying business networks to {{site.data.conrefs.hlf_full}} v1.0