Skip to content

Commit

Permalink
This commit updates the .md files and incorporate review comments
Browse files Browse the repository at this point in the history
Signed-off-by: mittachaitu <sai.chaithanya@mayadata.io>
  • Loading branch information
mittachaitu committed Sep 9, 2020
1 parent 35c939c commit 0e70470
Show file tree
Hide file tree
Showing 3 changed files with 49 additions and 22 deletions.
3 changes: 1 addition & 2 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -109,8 +109,7 @@ script:
sudo bash ../libcstor/tests/cstor/script/test_uzfs.sh -T all || travis_terminate 1;
fi
# Go back to libcstor to build images
- cd ..
- cd libcstor
- cd ../libcstor
- ./build_image.sh || travis_terminate 1;
# If this build is running due to travis release tag, then
# go ahead and tag the dependent repo.
Expand Down
17 changes: 15 additions & 2 deletions RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,28 @@ Once all the above tests are completed, a main release tagged image is published

## Release Tagging

libcstor is released as a library part of [github/cstor](https://github.com/openebs/cstor) container image with a versioned tag.
libcstor is released as a container image with a versioned tag.

Before creating a release, the repo owner needs to create a separate branch from the active branch, which is `master`. Name of the branch should follow the naming convention of `v.1.9.x` if release is for v1.9.0.

Once the release branch is created, changelog from `changelogs/unreleased` needs to be moved to release specific folder `changelogs/v1.9.x`, if release branch is `v1.10.x` then folder will be `changelogs/v1.10.x`.

The format of the release tag is either "Release-Name-RC1" or "Release-Name" depending on whether the tag is a release candidate or a release. (Example: v1.9.0-RC1 is a GitHub release tag for libcstor release build. v1.9.0 is the release tag that is created after the release criteria are satisfied by the libcstor builds.)

Once the release is triggered, Travis build process has to be monitored. Since libcstor is a library and it is published as part of [openebs/cstor](https://github.com/openebs/cstor) images, release process from libcstor repo won't publish any images.
Once the release is triggered, Travis build process has to be monitored. Once Travis build is passed images are pushed to docker hub and quay.io. Images can be verified by going through docker hub and quay.io. Also the images shouldn't have any high level vulnerabilities.

Images are published at the following location:
For AMD64:
```
https://quay.io/repository/openebs/cstor-pool?tab=tags
https://hub.docker.com/r/openebs/cstor-pool/tags
```

For ARM64:
```
https://quay.io/repository/openebs/cstor-pool-arm64?tab=tags
https://hub.docker.com/r/openebs/cstor-pool-arm64/tags
```

Once a release is created, update the release description with the changelog mentioned in folder `changelog/v1.9.x`. Once the changelogs are updated in the release, the repo owner needs to create a PR to `master` with the following details:
1. update the changelog from folder `changelog/v1.9.x` to file `libcstor/CHANGELOG-v1.9.md`
Expand Down
51 changes: 33 additions & 18 deletions developer-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,9 +27,11 @@
```
* Make sure that you have cloned cstor code in the system. Refer [cstor setup](https://github.com/openebs/cstor/blob/master/developer-setup.md)

**NOTE**: libcstor and cstor must present in the same parent directory.

* Make sure that you have cloned and build fio(branch fio-3.7) code in the linux system.
Please use below command for the fio
``sh
```sh
git clone https://github.com/axboe/fio
cd fio
git checkout fio-3.7
Expand Down Expand Up @@ -66,29 +68,42 @@ git remote -v
### Building and Testing your changes

* To build the libcstor library
```sh
sh autogen.sh
./configure --with-config=user --enable-debug --enable-uzfs=yes --with-jemalloc --with-spl-headers=$PWD/../cstor/lib/libspl/include
make
```
```sh
sh autogen.sh
./configure --with-config=user --enable-debug --enable-uzfs=yes --with-jemalloc --with-spl-headers=$PWD/../cstor/lib/libspl/include
make
```

* To install the library in local machine
```sh
sudo make install
sudo ldconfig
```
```sh
sudo make install
sudo ldconfig
```

* To verify the coding style
```sh
make -f ../cstor/Makefile cstyle CSTORDIR=$PWD/../cstor
```
```sh
make -f ../cstor/Makefile cstyle CSTORDIR=$PWD/../cstor
```

* To verify license checks
```sh
make check-license
```

* To build the zrepl binary(main process of cstor)
```sh
cd cmd/zrepl
make
cd ../../
```

* Test your changes
Integration tests are written in c and c+. Test script is maintained at https://github.com/openebs/libcstor/blob/master/tests/cstor/script/test_uzfs.sh
To run the run the integration tests.
```sh
./tests/cstor/script/test_uzfs.sh -T all
```

Integration tests are written in c and c+. Test script is maintained at https://github.com/openebs/libcstor/blob/master/tests/cstor/script/test_uzfs.sh
To run the run the integration tests go to cstor directory and run below command.
```sh
./tests/cstor/script/test_uzfs.sh -T all
```

## Git Development Workflow

Expand Down

0 comments on commit 0e70470

Please sign in to comment.