Adding files that were missed in latest update
28
.gitconfig
|
@ -1,28 +0,0 @@
|
|||
[user]
|
||||
email = brmoriar@microsoft.com
|
||||
name = Brendan Moriarty
|
||||
[alias]
|
||||
c = commit -m
|
||||
ca = commit -a -m
|
||||
ci = commit -v
|
||||
co = checkout
|
||||
po = push origin
|
||||
pu = pull origin
|
||||
m = master
|
||||
br = branch
|
||||
co = checkout
|
||||
a = add
|
||||
st = status
|
||||
mm = merge master
|
||||
pur = pull --rebase origin
|
||||
bname = rev-parse --abbrev-ref HEAD
|
||||
pr = "!f() { exec vsts code pr \"$@\"; }; f"
|
||||
repo = "!f() { exec vsts code repo \"$@\"; }; f"
|
||||
nbr = "checkout -b"
|
||||
del = "branch -d"
|
||||
remdel = "push --delete origin"
|
||||
diffc = "diff --cached"
|
||||
listcfg = config --list
|
||||
logb = log ^develop
|
||||
[core]
|
||||
autocrlf = input
|
|
@ -0,0 +1,53 @@
|
|||
# How to contribute to Service Fabric
|
||||
Welcome! If you are interested in contributing to Service Fabric, reporting issues, or just getting in touch with the folks who work on Service Fabric, this guide is for you.
|
||||
|
||||
One of the easiest ways to contribute is to participate in discussions and discuss issues. You can also contribute by opening an issue and submitting a pull request with code changes.
|
||||
|
||||
## Where to go
|
||||
Service Fabric is currently in the middle of a big transition to open development on GitHub. Please bear with us during this time as we refine the contribution process and get Service Fabric situated in its new home.
|
||||
|
||||
In the meantime, follow this guide to get to the right place depending on what you're looking to do.
|
||||
|
||||
### Help Service Fabric move to GitHub
|
||||
If you're interested in helping us move (or you just like working on build and test automation), you're in the right place. Head over to the [issues](https://github.com/Microsoft/service-fabric/issues) list where we are currently tracking work related to moving Service Fabric to open development.
|
||||
|
||||
### Open an issue
|
||||
For non-security related bugs, issues, or other discussion, please log a new issue in the appropriate GitHub repo:
|
||||
|
||||
- [Microsoft/service-fabric-services-and-actors-dotnet](https://github.com/Microsoft/service-fabric-services-and-actors-dotnet) for issues related to **Reliable Services, Reliable Actors, and Service Remoting**.
|
||||
- [Microsoft/service-fabric-aspnetcore](https://github.com/Microsoft/service-fabric-aspnetcore) for issues related to **ASP.NET Core integration with Reliable Services**.
|
||||
- [Microsoft/service-fabric-cli](https://github.com/Microsoft/service-fabric-cli) for any issues related to the **SF CLI (sfctl)**.
|
||||
- [Microsoft/service-fabric-explorer](https://github.com/Microsoft/service-fabric-explorer) for issues related to **Service Fabric Explorer**.
|
||||
- [Azure/service-fabric-issues](http://github.com/Azure/service-fabric-issues) for all other bugs or feature requests related to **Service Fabric in general**. Note that we will eventually migrate the issues repo into the main project repo, but for now we'd like to keep these separated from issues related to the transitioning of Service Fabric onto Github.
|
||||
- [Microsoft/service-fabric](http://github.com/Microsoft/service-fabric) for any issues specific to problems with **contributing to Service Fabric**, for example Docker builds not working, trouble running tests, etc.
|
||||
|
||||
### Reporting security issues and bugs
|
||||
Security issues and bugs should be reported privately, via email, to the Microsoft Security Response Center (MSRC) secure@microsoft.com. You should receive a response within 24 hours. If for some reason you do not, please follow up via email to ensure we received your original message. Further information, including the MSRC PGP key, can be found in the [Security TechCenter](https://technet.microsoft.com/en-us/security/ff852094.aspx).
|
||||
|
||||
### Other discussions
|
||||
For general "how-to" and guidance questions about using Service Fabric to build and run applications, please use [Stack Overflow](http://stackoverflow.com/questions/tagged/azure-service-fabric) tagged with `azure-service-fabric`.
|
||||
|
||||
GitHub supports [markdown](https://help.github.com/categories/writing-on-github/), so when filing bugs make sure you check the formatting before clicking submit.
|
||||
|
||||
## Contributing code and content
|
||||
We welcome all forms of contributions from the community. Please read the following guidelines to maximize the chances of your PR being merged.
|
||||
|
||||
### Communication
|
||||
- Before starting work on a feature, please open an issue on GitHub describing the proposed feature. As we're still getting our development process off the ground, we want to make sure any feature work goes smoothly. We're happy to work with you to determine if it fits the current project direction and make sure no one else is already working on it.
|
||||
|
||||
- For any work related to setting up build, test, and CI for Service Fabric on GitHub, or for small patches or bug fixes, please open an issue for tracking purposes, but we generally don't need a discussion prior to opening a PR.
|
||||
|
||||
### Development process
|
||||
Please be sure to follow the usual process for submitting PRs:
|
||||
|
||||
- Fork the repo
|
||||
- Create a pull request
|
||||
- Make sure your PR title is descriptive
|
||||
- Include a link back to an open issue in the PR description
|
||||
|
||||
We reserve the right to close PRs that are not making progress. If no changes are made for 7 days, we'll close the PR. Closed PRs can be reopened again later and work can resume.
|
||||
|
||||
### Contributor License Agreement
|
||||
Before you submit a pull request, a bot will prompt you to sign the [Microsoft Contributor License Agreement](https://cla.microsoft.com/). This needs to be done only once for any Microsoft-sponsored open source project - if you've signed the Microsoft CLA for any project sponsored by Microsoft, then you are good to go for all the repos sponsored by Microsoft.
|
||||
|
||||
> **Important**: Note that there are **two** different CLAs commonly used by Microsoft projects: [Microsoft CLA](https://cla.microsoft.com/) and [.NET Foundation CLA](https://cla2.dotnetfoundation.org/). Service Fabric open source projects use the [Microsoft](https://cla.microsoft.com/) CLA. The .NET Foundation is treated as a separate entity, so if you've signed the .NET Foundation CLA in the past, you will still need to sign the Microsoft CLA to contribute to Service Fabric open source projects.
|
|
@ -0,0 +1 @@
|
|||
### This folder is a placeholder for repo docs while we transition to a wiki or docs repo
|
После Ширина: | Высота: | Размер: 5.4 KiB |
После Ширина: | Высота: | Размер: 10 KiB |
После Ширина: | Высота: | Размер: 12 KiB |
После Ширина: | Высота: | Размер: 16 KiB |
После Ширина: | Высота: | Размер: 12 KiB |
После Ширина: | Высота: | Размер: 16 KiB |
После Ширина: | Высота: | Размер: 19 KiB |
После Ширина: | Высота: | Размер: 15 KiB |
После Ширина: | Высота: | Размер: 11 KiB |
После Ширина: | Высота: | Размер: 13 KiB |
|
@ -0,0 +1,29 @@
|
|||
# Service Fabric Core Subsystem Architecture
|
||||
|
||||
Service Fabric is composed of several subsystems working together to achieve the promise of the platform: to remove the complexities of distributed computing from developers who want to build highly available, resilient, and massively scalable cloud servcices across public and private clouds, and operating systems.
|
||||
|
||||
As you can see, it takes a lot of code to materialize Service Fabric. To make it easier to wander around the codebase, just click on a subsystem below and you will be taken directly to its top level source folder, which will include some useful information about what the subsystem does.
|
||||
|
||||
Enjoy your travels through the code and thank you for jumping in. We really look forward to your contributions and feedback. (NOTE: Please view this page in Desktop mode on your mobile device, otherwise the table formatting is funky...).
|
||||
<br/>
|
||||
<table>
|
||||
<tr>
|
||||
<td colspan="3" align="center"><strong>Click to Explore the Core Subsystems of Service Fabric</strong></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td align="right" width="130">
|
||||
<a href="/src/prod/src/Management#management-subsystem"><img src="/docs/architecture/Images/Management_E.png" height="230" width="125" align="right" /></a>
|
||||
</td>
|
||||
<td align="center" width="600">
|
||||
<a href="/src/prod/src/Communication#communication-subsystem"><img src="/docs/architecture/Images/Communication_E.png" /></a>
|
||||
<a href="/src/prod/src/Reliability#reliability-subsystem"><img src="/docs/architecture/Images/Reliability_E.png" /></a>
|
||||
<a href="/src/prod/src/Hosting2#hosting-subsystem"><img src="/docs/architecture/Images/Hosting_E.png" /></a>
|
||||
<br/>
|
||||
<a href="/src/prod/src/Federation#federation-subsystem"><img src="/docs/architecture/Images/Federation_E.png" /></a>
|
||||
<a href="/src/prod/src/Transport#transport-subsystem"><img src="/docs/architecture/Images/Transport_E.png" /></a>
|
||||
</td>
|
||||
<td align="left" width="130">
|
||||
<a href="/src/prod/src/Testability#testabililty-subsystem"><img src="/docs/architecture/Images/Testability_E.png" height="230" width="125" align="left" /></a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
|
@ -0,0 +1,53 @@
|
|||
# Running a test using Cluster Deployer in a Docker image
|
||||
|
||||
## Prerequisites
|
||||
|
||||
You will need to setup Docker as instructed here for (mac)[https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-get-started-mac] or see below for the Linux instructions.
|
||||
|
||||
### Linux Setup
|
||||
|
||||
---
|
||||
#### Note ####
|
||||
You can't run the local cluster and the Docker daemon concurrently. If you followed the [instructions] (install_packages_and_deploy_cluster.md) to setup a local cluster, then in order to use use this test you will need to stop the local cluster and start the Docker daemon.
|
||||
|
||||
```
|
||||
sudo systemctl stop servicefabric
|
||||
sudo systemctl start docker
|
||||
```
|
||||
---
|
||||
|
||||
1. Edit the Daemon configuration (normally /etc/docker/daemon.json)
|
||||
|
||||
```json
|
||||
{
|
||||
"ipv6": true,
|
||||
"fixed-cidr-v6": "fd00::/64"
|
||||
}
|
||||
```
|
||||
2. Expose a tcp listener for your Docker daemon. For Ubuntu edit /etc/systemd/system/docker.service.d/docker.conf
|
||||
|
||||
```
|
||||
[Service]
|
||||
ExecStart=
|
||||
ExecStart=/usr/bin/dockerd -H fd:// -H tcp://0.0.0.0:2376
|
||||
```
|
||||
|
||||
3. Reload Docker. On Ubuntu
|
||||
```
|
||||
sudo systemctl daemon-reload
|
||||
sudo systemctl restart docker
|
||||
```
|
||||
## Running the test
|
||||
|
||||
Build Service Fabric
|
||||
|
||||
$ ./runbuild.sh
|
||||
|
||||
Run the test
|
||||
```
|
||||
$ cd out/build.prod/ClusterDeployerTest/
|
||||
$ ./runtest.sh
|
||||
```
|
||||
## Details
|
||||
|
||||
This test first builds a Docker image (service-cluster-run-ubuntu) locally, this image contains the necessary packages to run Service Fabric. The test then runs Docker, mounting the FabricDrop folder in your output directory. Then a (sample application)[https://github.com/Azure-Samples/service-fabric-dotnet-core-getting-started] is downloaded and built inside the container. The application is installed, and if the http endpoint can be hit then the test passes.
|
|
@ -0,0 +1,92 @@
|
|||
|
||||
# How to install the packages and deploy local cluster on Linux
|
||||
|
||||
To deploy and run a cluster on your Linux development machine, install the runtime and common SDK generated as the build output.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
The following operating system versions are supported for development:
|
||||
|
||||
* Ubuntu 16.04 (`Xenial Xerus`)
|
||||
|
||||
Ensure you have run the build using the -createinstaller option to generate the debian files
|
||||
```
|
||||
./runbuild.sh -createinstaller
|
||||
```
|
||||
|
||||
## Installation steps
|
||||
|
||||
### Update your APT sources
|
||||
To install the SDK and the associated runtime package via the apt-get command-line tool, you must first update your Advanced Packaging Tool (APT) sources.
|
||||
|
||||
1. Open a terminal.
|
||||
|
||||
2. Add the `dotnet` repo to your sources list.
|
||||
|
||||
```bash
|
||||
sudo sh -c 'echo "deb [arch=amd64] https://apt-mo.trafficmanager.net/repos/dotnet-release/ xenial main" > /etc/apt/sources.list.d/dotnetdev.list'
|
||||
```
|
||||
|
||||
3. Add the new Gnu Privacy Guard (GnuPG, or GPG) key to your APT keyring.
|
||||
|
||||
```bash
|
||||
sudo apt-key adv --keyserver apt-mo.trafficmanager.net --recv-keys 417A0893
|
||||
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 417A0893
|
||||
```
|
||||
|
||||
4. Add the official Docker GPG key to your APT keyring.
|
||||
|
||||
```bash
|
||||
sudo apt-get install curl
|
||||
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
|
||||
```
|
||||
|
||||
5. Set up the Docker repository.
|
||||
|
||||
```bash
|
||||
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
|
||||
```
|
||||
|
||||
6. Refresh your package lists based on the newly added repositories.
|
||||
|
||||
```bash
|
||||
sudo apt-get install apt-transport-https
|
||||
sudo apt-get update
|
||||
```
|
||||
|
||||
### Install and set up the Service Fabric Debians for local cluster setup
|
||||
|
||||
After you have updated your sources, you can install the runtime and SDK, confirm the installation, and agree to the license agreement. Please cd to the location in the output directory where the debians are placed i.e. out/build.prod/FabricDrop/deb/. Install the runtime and sdk Debian packages named as servicefabric_x.x.x.x.deb and servicefabric_sdkcommon_y.y.y.deb, where x.x.x.x and y.y.y is the actual version numbers in the same of the file. Please replace the commands below with the actual files names in the folder
|
||||
|
||||
```bash
|
||||
sudo dpkg -i out/build.prod/FabricDrop/deb/servicefabric_6*.deb && sudo apt-get install -fy
|
||||
sudo dpkg -i out/build.prod/FabricDrop/deb/servicefabric_sdkcommon_*.deb && sudo apt-get install -fy
|
||||
```
|
||||
|
||||
> The following commands automate accepting the license for Service Fabric packages:
|
||||
> ```bash
|
||||
> echo "servicefabric servicefabric/accepted-eula-ga select true" | sudo debconf-set-selections
|
||||
> echo "servicefabricsdkcommon servicefabricsdkcommon/accepted-eula-ga select true" | sudo debconf-set-selections
|
||||
> ```
|
||||
|
||||
## Set up a local cluster
|
||||
Once the installation completes, you should be able to start a local cluster.
|
||||
|
||||
1. Run the cluster setup script.
|
||||
|
||||
```bash
|
||||
sudo /opt/microsoft/sdk/servicefabric/common/clustersetup/devclustersetup.sh
|
||||
```
|
||||
|
||||
2. Open a web browser and go to [Service Fabric Explorer](http://localhost:19080/Explorer). If the cluster has started, you should see the Service Fabric Explorer dashboard.
|
||||
|
||||
At this point, you can deploy pre-built Service Fabric application packages or new ones based on guest containers or guest executables. Please check out more details at [How to run some sample projects](https://azure.microsoft.com/resources/samples/?sort=0&service=service-fabric).
|
||||
|
||||
|
||||
> If you have an SSD disk avaiable, it is recommended to pass an SSD folder path using `--clusterdataroot` with devclustersetup.sh for superior performance.
|
||||
|
||||
## Set up the Service Fabric CLI
|
||||
|
||||
The [Service Fabric CLI](https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cli) has commands for interacting with Service Fabric entities,
|
||||
including clusters and applications.
|
||||
Follow the instructions at [Service Fabric CLI](https://docs.microsoft.com/en-us/azure/service-fabric/service-fabric-cli) to install the CLI.
|