@connectiv-ms/conveyor
v1.4.3
Published
conVeyor.Npm
Downloads
7
Keywords
Readme
conVeyor
About
conVeyor is a tool that takes care of moving code units from your machine to Dataverse. It matches your local files to their remote counterparts and checks which code units need updating. At this time conVeyor can only be used to upload webresources, but a pipeline that can handle deploying plugins is currently in the works.
Usage
Webresources
conVeyor will match your local files to webresources in Dataverse. If outdated content is found, these webresources will be updated with their local counterparts. Optionally, it can also create missing webresources.
The tool supports the following extensions:
- .html, .htm
- .js
- .css
- .svg, .gif, .jpg, .png, .ico
- .xml
- .xap, .xsl, .xslt
- .resx
The connection to the CRM is established via a connections.config
file.
Install
Install either via npm i -D @connectiv-ms/webresource-uploader
as a Dev-Dependency in your project, or install it globally via npm i -g @connectiv-ms/webresource-uploader
. Alternatively, this can also be executed via npx @connectiv-ms/webresource-uploader
, which installs the package and executes it immediately but will not add it to the Dev-Dependencies.
If you cannot use the npm
commands, you can also copy the exe of the C# project to your project folder and run the executable from there.
If you already have the old @connectiv-ms/webresource-uploader
installed, please make sure, that you uninstall this package first (npm uninstall -g @connectiv-ms/webresource-uploader
), due to a conflict in the command aliases.
Execute
The tool can be installed via npm using the following command:
npm i -g @connectiv-ms/conveyor
Executing after Global NPM Install
After installing the package with the -g
flag (See Installation: NPM), you can run the tool via the upload-webresources
or convey webresources
commands in the terminal.
Direct execution via NPX
npx @connectiv-ms/webresource-uploader
downloads the tool in your current working directory if it is not already present and executes it afterwards. This is the preferred option for batch/shell/NPM scripts as it does not require preexisting installs.
Executing via dotnet tool
After installing the tool with the --global
flag (See Installation: dotnet tool), you can run the tool via the upload-webresources
or convey webresources
commands in the terminal.
Arguments
You can pass a relative or absolute path to a folder or a single file as the first argument to this tool.
Options
The tool does not necessarily need options to run, but if you need to override the default behavior, you can do so by supplying the options described in the table below. Some options offer a shorthand option, which can be used via -x <value>
. The full option name can be supplied via --fullName <value>
For boolean options (flags), the value can be omitted.
You can always use the --help
option to get a short tutorial on how to call this tool and what all these options do.
| Option | Alternative | Description | Default |
|------------|-------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| connection | c | Absolute or relative path to a connection.config file. Relative paths are resolved according to the git repository root folder. | If this option is not provided, the tool will look for a connections.config file in the following locations: <reporoot>/connections.config
<reporoot>/.buildconfig/connections/connection.config.<branchname>
where <branchname>
is the currently active git branch and <reporoot>
is the root folder of the current git repository. |
| profile | p | The name of the profile in the connection config file that should be used. | Profile at default connection index or first profile found in connections.config file. |
| create | | This flag controls if code units that cannot be found in Dataverse will be created automatically. | false
|
| solution | | Enter the unique solution name that webresources should be added to. If there is a patch for the target solution, the webresource will be added to this patch instead. Required if --create
flag is passed and no SolutionName tag has been added to the connections.config file. | The solution that is specified in the connections.config file. |
| continuous | | This option keeps the tool open after completing the pipeline, which usually leads to better execution times for following pipeline runs, as the connection is cached. There are several versions that you can use:filewatcher
: Waits until the filesystem signals that files have changed and starts the next pipeline automatically.interval-<X>
: Starts a new pipeline <X>
seconds after the last pipeline has finished. If -<X>
is omitted, it will default to 10.manual
: Will start a new pipeline run after pressing enter. | By default, the tool executes only once. Using this flag is recommended though, as it mitigates the overhead of reconnecting everytime. Additionally, remote resources are cached where possible to reduce wait times. |
| comparer | | Controls how changes between local and remote webresources are detected.content
(default): Compares the content of the local and remote webresourcehash-<HASH-ALGORITHM>
: Compares the hash value computed by <HASH-ALGORITHM>
of the local file with the hash value injected into the remote webresource description tag. Available -<HASH-ALGORITHM>
values are MD5
, SHA1
, SHA256
. If -<HASH-ALGORITHM>
is omitted, the MD5
option will be used. THIS WILL MODIFY WEBRESOURCE DESCRIPTIONS. IT IS RECOMMENDED TO NOT USE THIS OPTION IF LONG WEBRESOURCE DESCRIPTIONS ARE USED! | Comparison via content
|
| uploader | | iterative
: (default) Uploads webresources one by one.parallel
: Uploads webresources in parallel. | iterative
|
| publisher | | bulk
: (default) Publishes multiple webresources at once. Strongly recommendedbulk-nowait
: Publishes multiple webresources at once, but does not wait for the publish operation to complete. (Useful for --continuous
modes)iterative
: Publishes webresources one at a time.all
: Publishes ALL solution components in the environment. NOT RECOMMENDED! | bulk
|
| filter | | Regular expression that filters the source files by name. | |