Update repositories.php (#639) #566
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: Deploy via ftp | |
on: | |
push: | |
branches: main | |
workflow_dispatch: | |
concurrency: | |
group: build-deploy | |
jobs: | |
deploy: | |
name: Deploy service to FTP | |
runs-on: ubuntu-latest | |
outputs: | |
semVer: ${{ steps.gitversion.outputs.semVer }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
- name: Install GitVersion | |
uses: gittools/actions/gitversion/setup@v2 | |
with: | |
versionSpec: "5.x" | |
- name: Determine Version | |
id: gitversion | |
uses: gittools/actions/gitversion/execute@v2 | |
with: | |
useConfigFile: true | |
- name: Cache Composer dependencies | |
uses: actions/cache@v4 | |
with: | |
path: /tmp/composer-cache | |
key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }} | |
- name: Install dependencies | |
uses: "php-actions/composer@v6" | |
with: | |
php_extensions: sockets | |
dev: no | |
progress: yes | |
working_dir: "./Src/" | |
- name: Create .htaccess secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "Deny from all" >> .htaccess | |
- name: Generate AppVeyor secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> appVeyor.secrets.php | |
echo "\$appVeyorKey = \"${{ secrets.APPVEYOR_KEY }}\";" >> appVeyor.secrets.php | |
- name: Generate Codacy secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> codacy.secrets.php | |
echo "\$codacyApiToken = \"${{ secrets.CODACY_API_TOKEN }}\";" >> codacy.secrets.php | |
- name: Generate Codecov secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> codecov.secrets.php | |
echo "\$codecovApiToken = \"${{ secrets.CODECOV_API_TOKEN }}\";" >> codecov.secrets.php | |
- name: Generate GitHub App secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> gitHubApp.secrets.php | |
echo "\$gitHubUserToken = \"${{ secrets.USER_TOKEN }}\";" >> gitHubApp.secrets.php | |
echo "\$gitHubAppId = \"${{ secrets.APP_ID }}\";" >> gitHubApp.secrets.php | |
echo "\$gitHubAppPrivateKey = \"${{ secrets.APP_PRIVATE_KEY}}\";" >> gitHubApp.secrets.php | |
echo "\$gitHubWebhookEndpoint = \"${{ secrets.WEBHOOK_ENDPOINT }}\";" >> gitHubApp.secrets.php | |
echo "\$gitHubWebhookSignature = \"${{ secrets.WEBHOOK_SIGNATURE }}\";" >> gitHubApp.secrets.php | |
- name: Generate HealthChecksIo secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoBranches = \"${{ secrets.HEALTHCHECKSIO_BRANCHES }}\";" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoIssues = \"${{ secrets.HEALTHCHECKSIO_ISSUES }}\";" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoComments = \"${{ secrets.HEALTHCHECKSIO_COMMENTS }}\";" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoPushes = \"${{ secrets.HEALTHCHECKSIO_PUSHES }}\";" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoPullRequests = \"${{ secrets.HEALTHCHECKSIO_PULL_REQUESTS }}\";" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoRepositories = \"${{ secrets.HEALTHCHECKSIO_REPOSITORIES }}\";" >> healthChecksIo.secrets.php | |
echo "\$healthChecksIoSignature = \"${{ secrets.HEALTHCHECKSIO_SIGNATURE }}\";" >> healthChecksIo.secrets.php | |
- name: Create Logger secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> logger.secrets.php | |
echo "\$loggerUrl = \"${{ secrets.LOGGER_URL }}\";" >> logger.secrets.php | |
echo "\$loggerApiKey = \"${{ secrets.LOGGER_APIKEY }}\";" >> logger.secrets.php | |
echo "\$loggerApiToken = \"${{ secrets.LOGGER_APITOKEN }}\";" >> logger.secrets.php | |
- name: Create MySQL secrets file | |
run: | | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> mySql.secrets.php | |
echo "\$mySqlHost = \"127.0.0.1\";" >> mySql.secrets.php | |
echo "\$mySqlUser = \"${{ secrets.MYSQL_USER }}\";" >> mySql.secrets.php | |
echo "\$mySqlPassword = \"${{ secrets.MYSQL_PASSWORD }}\";" >> mySql.secrets.php | |
echo "\$mySqlDatabase = \"${{ secrets.MYSQL_DATABASE }}\";" >> mySql.secrets.php | |
- name: Create RabbitMQ secrets file | |
run: | | |
SECRETS_CONTEXT='${{ toJson(secrets) }}' | |
cd Src | |
mkdir -p secrets | |
cd secrets | |
echo "<?php" >> rabbitMq.secrets.php | |
rabbitmq_values=$(echo "$SECRETS_CONTEXT" | jq -S '.' | jq -r 'to_entries | map(select(.key | startswith("RABBITMQ_"))) | .[].value') | |
for value in $rabbitmq_values; do | |
value_final=$(echo $value | sed 's/\\n/ /g') | |
echo "\$rabbitMqConnectionStrings[] = \"$value_final\";" >> rabbitMq.secrets.php | |
done | |
- name: Create version file for API | |
run: | | |
cd Src | |
echo ${{ env.fullSemVer }} > version.txt | |
- name: Upload service | |
uses: sebastianpopp/ftp-action@releases/v2 | |
with: | |
host: ${{ secrets.FTP_SERVER }} | |
user: ${{ secrets.FTP_USERNAME }} | |
password: ${{ secrets.FTP_PASSWORD }} | |
localDir: "Src" | |
remoteDir: "/" | |
create_release: | |
name: Create release | |
needs: deploy | |
env: | |
SEMVER: ${{ needs.deploy.outputs.semVer }} | |
runs-on: ubuntu-latest | |
steps: | |
- name: Create Release | |
uses: ncipollo/release-action@v1.14.0 | |
with: | |
allowUpdates: false | |
skipIfReleaseExists: true | |
draft: false | |
makeLatest: true | |
tag: v${{ env.SEMVER }} | |
name: Release v${{ env.SEMVER }} | |
generateReleaseNotes: true | |
body: Release ${{ env.SEMVER }} of ${{ github.event.repository.name }} |