Xperience.Xman
3.0.0
See the version list below for details.
dotnet tool install --global Xperience.Xman --version 3.0.0
dotnet new tool-manifest # if you are setting up this repo dotnet tool install --local Xperience.Xman --version 3.0.0
#tool dotnet:?package=Xperience.Xman&version=3.0.0
nuke :add-package Xperience.Xman --version 3.0.0
Xperience Manager (xman)
This tool simplifies the process of installing and managing Xperience by Kentico instances by providing step-by-step wizards with default options provided.
<img src="https://raw.githubusercontent.com/kentico-ericd/xperience-manager/master/img/screenshot.png" width="350" />
Installing the tool
Run the following command from a command prompt such as Powershell:
dotnet tool install Xperience.Xman -g
Updating the tool
Run the following command from a command prompt such as Powershell:
dotnet tool update xperience.xman -g
Getting started
This tool must be run from a parent directory containing one or more Xperience by Kentico projects, for example the C:\inetpub\wwwroot directory. When you install a new instance, a new profile is created in the xman.json
file, allowing you to manage multiple installations without changing directory.
Usage
The following commands can be executed using the xman
tool name:
?
,help
i
,install
u
,update
ci <store> <restore>
cd <store> <restore> <config>
p
,profile <add> <delete> <switch>
Managing profiles
<img src="https://raw.githubusercontent.com/kentico-ericd/xperience-manager/master/img/profiles.png" width="350" />
Certain commands such as update
are executed against the installation indicated by the current profile. The profile
command shows you the current profile, and allows you to switch profiles. If you only have one profile, that is automatically selected.
To switch profiles, run the profile
command from the directory containing the xman.json
file:
xman profile
You can add or delete profiles using the corresponding commands. This can be useful to register Xperience by Kentico installations that weren't installed using the tool.
xman p add
xman p delete
Installing a new project
This command installs a new Xperience by Kentico project in a subfolder of the current directory. The name of the profile and subfolder are determined by the Project name entered during installation. The xman.json
file contains default installation options, which you may edit to speed up the installation of new instances. For example:
"DefaultInstallOptions": {
"AdminPassword": "mypassword",
"DatabaseName": "mycompany",
"ProjectName": "mysite",
"ServerName": "company-server",
"Template": "kentico-xperience-sample-mvc",
"UseCloud": true,
"Version": null //Version cannot have a default value
},
Run the
install
command from the directory containing thexman.json
file, which will begin the installation wizard:xman install
Updating a project version
Currently, there is a bug with updating the project's database version, so the tool only updates the NuGet packages and builds the project. However, the database update command is provided in the UI for easy copy-pasting.
(optional) Select a profile with the
profile
commandRun the
update
command from the directory containing thexman.json
file, which will begin the update wizard:xman update
Running Continuous Integration
You can use the ci
command to serialize the database or restore the CI repository to the database. Your project must have been built at least once to run CI commands.
(optional) Select a profile with the
profile
commandRun the desired command to begin the CI process:
xman ci store
xman ci restore
Running Continuous Deployment
This tool can help you manage a local Continuous Deployment environment. For example, if you are self-hosting your website and you have DEV and PROD Xperience by Kentico instances, the tool simplifies the process of migrating database changes from lower environments to production.
The CD configuration files and repositories are stored in a subdirectory from where the tool is run from, by default in /ContinuousDeployment
. You can customize the path by changing the CDRootPath property in xman.json
:
{
"CDRootPath": "C:\\XperienceCDFiles",
...
}
The configuration file is automatically created when you run the cd
command and can be manually edited to fine-tune the CD process. You can also run the config
command to edit the configuration file using a wizard. For example, you may want to change the RestoreMode before restoring CD data to the database.
Select a profile with the
profile
command. This determines which configuration file is modifiedRun the
config
command from the directory containing thexman.json
file, which will begin the configuration wizard:xman cd config
When you are finished development and wish to serialize the CD data to the filesystem, use the store
command:
Select a profile with the
profile
command. This determines which project's database is serializedRun the
store
command from the directory containing thexman.json
file:xman p # switch to DEV profile xman cd store # serialize DEV database
To migrate the changes from development to production, run the restore
command:
Select a profile with the
profile
command. This determines which project's database is updatedRun the
restore
command from the directory containing thexman.json
file. The tool will display a list of profiles to choose as the source for the restore process (in this example, the DEV profile):xman p # switch to PROD profile xman cd restore # restore DEV CD files to PROD database
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
This package has no dependencies.
Version | Downloads | Last updated |
---|---|---|
3.4.0 | 179 | 1/25/2024 |
3.3.0 | 132 | 1/17/2024 |
3.2.0 | 169 | 12/21/2023 |
3.1.0 | 151 | 12/19/2023 |
3.0.0 | 131 | 12/15/2023 |
2.0.2 | 144 | 12/13/2023 |
2.0.1 | 128 | 12/11/2023 |
2.0.0 | 168 | 12/9/2023 |
1.0.0 | 180 | 12/7/2023 |
0.8.0 | 144 | 12/7/2023 |
0.7.2 | 118 | 12/5/2023 |
0.7.1 | 142 | 12/5/2023 |
0.7.0 | 154 | 12/4/2023 |
0.6.0 | 166 | 12/4/2023 |
0.5.0 | 173 | 12/3/2023 |
0.4.0 | 171 | 12/1/2023 |
0.3.1 | 158 | 12/1/2023 |
0.3.0 | 157 | 12/1/2023 |
0.2.0 | 157 | 11/30/2023 |
0.1.1 | 128 | 11/30/2023 |
0.1.0 | 146 | 11/30/2023 |
0.0.1 | 101 | 11/30/2023 |