Skip to content

Commit

Permalink
merge stable/v3.x to thin branch
Browse files Browse the repository at this point in the history
  • Loading branch information
shosseinimotlagh committed Mar 1, 2024
1 parent aa51c60 commit 66b67c5
Show file tree
Hide file tree
Showing 3 changed files with 77 additions and 131 deletions.
205 changes: 75 additions & 130 deletions .github/workflows/build_dependencies.yml
Original file line number Diff line number Diff line change
Expand Up @@ -71,133 +71,78 @@ jobs:
BuildHomestoreDeps:
runs-on: ${{ inputs.platform }}
steps:
- name: Retrieve Code
uses: actions/checkout@v3
with:
ref: ${{ inputs.branch }}
if: ${{ inputs.testing == 'True' }}

- name: Retrieve Recipe
uses: actions/checkout@v3
with:
repository: eBay/Homestore
ref: ${{ inputs.branch }}
if: ${{ inputs.testing == 'False' }}

- name: Load Homestore Cache
id: restore-cache
uses: eBay/sisl/.github/actions/load_conan@stable/v8.x
with:
testing: ${{ inputs.testing }}
key_prefix: HomestoreDeps8-${{ inputs.platform }}-${{ inputs.build-type }}-${{ inputs.malloc-impl }}-${{ inputs.prerelease }}

- name: Load Sisl Cache
uses: eBay/sisl/.github/actions/load_conan@stable/v8.x
with:
load_any: 'True'
key_prefix: SislDeps8-${{ inputs.platform }}-${{ inputs.build-type }}-${{ inputs.malloc-impl }}-${{ inputs.prerelease }}
if: ${{ inputs.testing == 'True' || steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Retrieve Dependencies
uses: actions/checkout@v3
with:
repository: eBay/iomanager
path: import/iomgr
ref: stable/v8.x
if: ${{ inputs.testing == 'True' || steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Load IOMgr Cache
uses: eBay/sisl/.github/actions/load_conan@stable/v8.x
with:
testing: 'False'
path: import/iomgr
key_prefix: IOMgrDeps8-${{ inputs.platform }}-${{ inputs.build-type }}-${{ inputs.malloc-impl }}-${{ inputs.prerelease }}
fail_on_cache_miss: true
if: ${{ inputs.testing == 'True' || steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Setup Conan
uses: eBay/sisl/.github/actions/setup_conan@stable/v8.x
with:
platform: ${{ inputs.platform }}
if: ${{ inputs.testing == 'True' || steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Export Recipes
run: |
sudo apt-get install -y python3-pyelftools libaio-dev
python -m pip install pyelftools
conan export import/iomgr
cached_pkgs=$(ls -1d ~/.conan/data/*/*/*/*/package | sed 's,.*data/,,' | cut -d'/' -f1,2 | paste -sd',' - -)
echo "::info:: Pre-cached: ${cached_pkgs}"
if: ${{ inputs.testing == 'True' || steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Build Cache
run: |
conan install \
-o sisl:prerelease=${{ inputs.prerelease }} \
-o sisl:malloc_impl=${{ inputs.malloc-impl }} \
-o iomgr:testing=off \
-o testing=min \
-s build_type=${{ inputs.build-type }} \
--build missing \
.
if: ${{ steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Save Conan Cache
uses: eBay/sisl/.github/actions/store_conan@stable/v8.x
with:
key_prefix: HomestoreDeps8-${{ inputs.platform }}-${{ inputs.build-type }}-${{ inputs.malloc-impl }}-${{ inputs.prerelease }}
if: ${{ github.event_name != 'pull_request' && steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Reload Sisl Cache
uses: eBay/sisl/.github/actions/load_conan@stable/v8.x
with:
load_any: 'True'
key_prefix: SislDeps8-${{ inputs.platform }}-${{ inputs.build-type }}-${{ inputs.malloc-impl }}-${{ inputs.prerelease }}
if: ${{ inputs.testing == 'True' && github.event_name != 'pull_request' && steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Reload IOMgr Cache
uses: eBay/sisl/.github/actions/load_conan@stable/v8.x
with:
testing: 'False'
path: import/sisl
key_prefix: IOMgrDeps8-${{ inputs.platform }}-${{ inputs.build-type }}-${{ inputs.malloc-impl }}-${{ inputs.prerelease }}
fail_on_cache_miss: true
if: ${{ inputs.testing == 'True' && github.event_name != 'pull_request' && steps.restore-cache.outputs.cache-hit != 'true' }}

- name: Code Coverage Run
run: |
conan install \
-o sisl:prerelease=${{ inputs.prerelease }} \
-o sisl:malloc_impl=${{ inputs.malloc-impl }} \
-o iomgr:testing=off \
-o homestore:testing=min \
-o coverage=True \
-s build_type=${{ inputs.build-type }} \
--build missing \
.
conan build .
if: ${{ inputs.testing == 'True' && inputs.platform == 'ubuntu-22.04' && inputs.build-type == 'Debug' && inputs.malloc-impl == 'libc' && inputs.prerelease == 'False' }}

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
gcov: true
if: ${{ inputs.testing == 'True' && inputs.platform == 'ubuntu-22.04' && inputs.build-type == 'Debug' && inputs.malloc-impl == 'libc' && inputs.prerelease == 'False' }}

- name: Create and Test Package
run: |
sanitize=$([[ "${{ inputs.build-type }}" == "Debug" && \
"${{ inputs.malloc-impl }}" == "libc" && \
"${{ inputs.prerelease }}" == "True" ]] && \
echo "True" || echo "False")
conan create \
-o sisl:prerelease=${{ inputs.prerelease }} \
-o sisl:malloc_impl=${{ inputs.malloc-impl }} \
-o iomgr:testing=off \
-o homestore:testing=min \
-o homestore:sanitize=${sanitize} \
-s build_type=${{ inputs.build-type }} \
--build missing \
.
if: ${{ inputs.testing == 'True' && ( inputs.platform != 'ubuntu-22.04' || inputs.build-type != 'Debug' || inputs.malloc-impl != 'libc' || inputs.prerelease != 'False' ) }}
- name: Retrieve Code
uses: actions/checkout@v3
with:
ref: ${{ inputs.branch }}
if: ${{ inputs.testing == 'True' }}

- name: Retrieve Recipe
uses: actions/checkout@v3
with:
repository: eBay/Homestore
ref: ${{ inputs.branch }}
if: ${{ inputs.testing == 'False' }}

- name: Setup Conan
uses: eBay/sisl/.github/actions/setup_conan@stable/v8.x
with:
platform: ${{ inputs.platform }}
if: ${{ inputs.testing == 'True' }}

- name: Export Recipes
run: |
sudo apt-get install -y python3-pyelftools libaio-dev
python -m pip install pyelftools
conan export import/iomgr
cached_pkgs=$(ls -1d ~/.conan/data/*/*/*/*/package | sed 's,.*data/,,' | cut -d'/' -f1,2 | paste -sd',' - -)
echo "::info:: Pre-cached: ${cached_pkgs}"
if: ${{ inputs.testing == 'True' }}

- name: Build Cache
run: |
conan install \
-o sisl:prerelease=${{ inputs.prerelease }} \
-o sisl:malloc_impl=${{ inputs.malloc-impl }} \
-o iomgr:testing=off \
-o testing=min \
-s build_type=${{ inputs.build-type }} \
--build missing \
.
- name: Code Coverage Run
run: |
conan install \
-o sisl:prerelease=${{ inputs.prerelease }} \
-o sisl:malloc_impl=${{ inputs.malloc-impl }} \
-o iomgr:testing=off \
-o homestore:testing=min \
-o coverage=True \
-s build_type=${{ inputs.build-type }} \
--build missing \
.
conan build .
if: ${{ inputs.testing == 'True' && inputs.platform == 'ubuntu-22.04' && inputs.build-type == 'Debug' && inputs.malloc-impl == 'libc' && inputs.prerelease == 'False' }}

- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
gcov: true
if: ${{ inputs.testing == 'True' && inputs.platform == 'ubuntu-22.04' && inputs.build-type == 'Debug' && inputs.malloc-impl == 'libc' && inputs.prerelease == 'False' }}

- name: Create and Test Package
run: |
sanitize=$([[ "${{ inputs.build-type }}" == "Debug" && \
"${{ inputs.malloc-impl }}" == "libc" && \
"${{ inputs.prerelease }}" == "True" ]] && \
echo "True" || echo "False")
conan create \
-o sisl:prerelease=${{ inputs.prerelease }} \
-o sisl:malloc_impl=${{ inputs.malloc-impl }} \
-o iomgr:testing=off \
-o homestore:testing=min \
-o homestore:sanitize=${sanitize} \
-s build_type=${{ inputs.build-type }} \
--build missing \
.
if: ${{ inputs.testing == 'True' && ( inputs.platform != 'ubuntu-22.04' || inputs.build-type != 'Debug' || inputs.malloc-impl != 'libc' || inputs.prerelease != 'False' ) }}
1 change: 1 addition & 0 deletions .github/workflows/pr_conan_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ on:
branches:
- master
- stable/v3.x
- thin_provisioning

jobs:
Build:
Expand Down
2 changes: 1 addition & 1 deletion conanfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

class HomestoreConan(ConanFile):
name = "homestore"
version = "3.7.2"
version = "3.7.1"

homepage = "https://github.corp.ebay.com/SDS/homestore"
description = "HomeStore"
Expand Down

0 comments on commit 66b67c5

Please sign in to comment.