feat(framework) Add set_node_public_key
and get_node_public_key
methods to LinkState
#24617
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Baselines | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref == 'refs/heads/main' && github.run_id || github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
FLWR_TELEMETRY_ENABLED: 0 | |
jobs: | |
changes: | |
runs-on: ubuntu-22.04 | |
permissions: | |
pull-requests: read | |
outputs: | |
baselines: ${{ steps.filter.outputs.changes }} | |
steps: | |
- uses: actions/checkout@v4 | |
- shell: bash | |
run: | | |
# create a list of all directories in baselines | |
{ | |
echo 'FILTER_PATHS<<EOF' | |
FILTER="" | |
while read -d $'\0' BASELINES_PATH; do | |
DIR=$(basename $BASELINES_PATH) | |
FILTER+=$(echo "$DIR: ${BASELINES_PATH}/**\n") | |
done < <(find baselines -maxdepth 1 \ | |
-name ".*" -prune -o \ | |
-path "baselines/docs" -prune -o \ | |
-path "baselines/dev" -prune -o \ | |
-path "baselines/baseline_template" -prune -o \ | |
-path "baselines/flwr_baselines" -prune -o \ | |
-type d -print0) | |
FILTER=$(echo -e "$FILTER") | |
# remove first line | |
FILTER=${FILTER#*$'\n'} | |
echo "$FILTER" | |
echo EOF | |
} >> "$GITHUB_ENV" | |
- uses: dorny/paths-filter@v3 | |
id: filter | |
with: | |
filters: ${{ env.FILTER_PATHS }} | |
- if: ${{ github.event.pull_request.head.repo.fork }} | |
run: | | |
CHANGES=$(echo "${{ toJson(steps.filter.outputs.changes) }}" | jq '. | length') | |
if [ "$CHANGES" -gt 1 ]; then | |
echo "::error ::The changes should only apply to a single baseline." | |
exit 1 | |
fi | |
test: | |
runs-on: ubuntu-22.04 | |
needs: changes | |
if: ${{ needs.changes.outputs.baselines != '' && toJson(fromJson(needs.changes.outputs.baselines)) != '[]' }} | |
strategy: | |
matrix: | |
baseline: ${{ fromJSON(needs.changes.outputs.baselines) }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Bootstrap | |
uses: ./.github/actions/bootstrap | |
with: | |
python-version: '3.10' | |
- name: Install dependencies | |
working-directory: baselines/${{ matrix.baseline }} | |
run: python -m poetry install | |
- name: Testing ${{ matrix.baseline }} | |
working-directory: baselines | |
run: ./dev/test-baseline.sh ${{ matrix.baseline }} | |
- name: Test Structure of ${{ matrix.baseline }} | |
working-directory: baselines | |
run: ./dev/test-baseline-structure.sh ${{ matrix.baseline }} |