From 998d5138f592762bf4435accfdb026ba95a13497 Mon Sep 17 00:00:00 2001 From: Ev-1 <33662061+Ev-1@users.noreply.github.com> Date: Fri, 28 Aug 2020 17:11:06 +0200 Subject: [PATCH 1/6] Also small bugfix Because who needs testing? --- cogs/music.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/cogs/music.py b/cogs/music.py index 2bc6e77..504a0dc 100644 --- a/cogs/music.py +++ b/cogs/music.py @@ -88,9 +88,6 @@ class Music(commands.Cog): await ctx.send(embed=embed) else: track = results['tracks'][0] - thumbnail_url = await thumbnailer.ThumbNailer.identify( - self, track['info']['identifier'], track['info']['uri']) - track = lavalink.models.AudioTrack(track, ctx.author.id, thumbnail_url=thumbnail_url) await self.enqueue(ctx, track, embed) embed = ctx.localizer.format_embed(embed) await ctx.send(embed=embed) @@ -769,7 +766,9 @@ class Music(commands.Cog): player = self.bot.lavalink.player_manager.get(ctx.guild.id) if isinstance(track, dict): - track = lavalink.models.AudioTrack(track, ctx.author.id) + thumbnail_url = await thumbnailer.ThumbNailer.identify( + self, track['info']['identifier'], track['info']['uri']) + track = lavalink.models.AudioTrack(track, ctx.author.id, thumbnail_url=thumbnail_url) maxlength = self.max_track_length(ctx.guild, player) if maxlength and track['info']['length'] > maxlength: From f6c4443ad29f0e349a8558613ea41de82e9f36ec Mon Sep 17 00:00:00 2001 From: Ev-1 <33662061+Ev-1@users.noreply.github.com> Date: Fri, 28 Aug 2020 22:11:22 +0200 Subject: [PATCH 2/6] Fixed bug relating to Auditrack extras and maxlength :| --- cogs/music.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/cogs/music.py b/cogs/music.py index 504a0dc..c775177 100644 --- a/cogs/music.py +++ b/cogs/music.py @@ -765,11 +765,6 @@ class Music(commands.Cog): async def enqueue(self, ctx, track, embed): player = self.bot.lavalink.player_manager.get(ctx.guild.id) - if isinstance(track, dict): - thumbnail_url = await thumbnailer.ThumbNailer.identify( - self, track['info']['identifier'], track['info']['uri']) - track = lavalink.models.AudioTrack(track, ctx.author.id, thumbnail_url=thumbnail_url) - maxlength = self.max_track_length(ctx.guild, player) if maxlength and track['info']['length'] > maxlength: embed.description = ctx.localizer.format_str("{enqueue.toolong}", @@ -777,6 +772,11 @@ class Music(commands.Cog): _max=timeformatter.format_ms(maxlength)) return + if isinstance(track, dict): + thumbnail_url = await thumbnailer.ThumbNailer.identify( + self, track['info']['identifier'], track['info']['uri']) + track = lavalink.models.AudioTrack(track, ctx.author.id, thumbnail_url=thumbnail_url) + track, pos_global, pos_local = player.add(requester=ctx.author.id, track=track) if player.current is not None: From 30cf9e492c865a57ae02f4b79159ab59752d7756 Mon Sep 17 00:00:00 2001 From: Roxedus Date: Tue, 1 Sep 2020 00:27:33 +0200 Subject: [PATCH 3/6] Improve workflow --- .github/workflows/build.yml | 66 ++++++++++++++++++++++++++++--------- 1 file changed, 50 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d92a696..b8fbc46 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -8,10 +8,12 @@ jobs: CheckFiles: "bot.py cogs/" steps: - uses: actions/checkout@v2 + - name: Set up Python 3.8 uses: actions/setup-python@v1 with: python-version: 3.8 + - name: Lint with flake8 run: | pip install flake8 @@ -21,10 +23,12 @@ jobs: run: | pip install isort isort --check --sp setup.cfg ${CheckFiles} + - name: Sort with Isort if: failure() run: | isort --sp setup.cfg ${CheckFiles} + - name: Create Pull Request if: failure() uses: peter-evans/create-pull-request@v2 @@ -38,36 +42,66 @@ jobs: build-and-push: needs: flake8 runs-on: ubuntu-latest + if: ! github.event_name == 'pull_request' env: - repo: rnorge/music - ref: ${{github.ref}} - DOCKER_USERNAME: roxedus DOCKER_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }} steps: - uses: actions/checkout@v2 - - name: Build the Docker image + + - name: Create VARS + env: + _repo: rnorge/music + _ref: ${{github.ref}} + id: vars run: | - branch="${ref##*/}" - docker build -t $repo:$branch -t $repo:$branch-${{github.sha}} . + echo "::set-output name=branch::$(echo ${_ref} | cut -d/ -f3)" + echo "::set-output name=username::roxedus" + echo "::set-output name=repo::rnorge/music" + + - name: Bump TAG + if: github.ref == 'refs/heads/master' + id: tagger + run: | + version=$(grep -i bot_version cogs/utils/bot_version.py | cut -d" " -f3 | tr -d \") + a=(${version//./ }) + ((a[2]++)) + new_version=$(echo "${a[0]}.${a[1]}.${a[2]}") + sed -i "s/${version}/${new_version}/g" cogs/utils/bot_version.py + echo "::set-output name=tag::${new_version}" + + - name: Push changed files, and tags + if: github.ref == 'refs/heads/master' + uses: EndBug/add-and-commit@v4 + with: + add: cogs/utils/bot_version.py + author_name: MarlinBotCode + message: Bump Version + tag: ${{ steps.vars.tagger.tag }} + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Build the Docker image + env: + REPO: ${{ steps.vars.outputs.repo }} + BRANCH: ${{ steps.vars.outputs.branch }} + run: | + docker build -t $REPO:$BRANCH -t $REPO:$BRANCH-${{github.sha}} . - name: Master tag if: github.ref == 'refs/heads/master' + env: + REPO: ${{ steps.vars.outputs.repo }} + BRANCH: ${{ steps.vars.outputs.branch }} run: | - branch="${ref##*/}" - bot_ver=$(grep -i bot_version cogs/utils/bot_version.py | cut -d" " -f3 | tr -d \") - docker tag $repo:$branch $repo:$bot_ver - - - name: Bump version and push tag - if: github.ref == 'refs/heads/master' - uses: mathieudutour/github-tag-action@v3 - with: - github_token: ${{ secrets.GITHUB_TOKEN }} + docker tag $REPO:$BRANCH $REPO:${{ steps.vars.tagger.tag }} - name: Login to registry if: github.event.pull_request == false run: echo $DOCKER_PASSWORD | docker login -u $DOCKER_USERNAME --password-stdin - name: Pushes the Docker image + env: + REPO: ${{ steps.vars.outputs.repo }} if: github.event.pull_request == false - run: docker push $repo + run: docker push $REPO From 162d9ea49f25d1ee797a1d229adfa5fa5395d451 Mon Sep 17 00:00:00 2001 From: Roxedus Date: Tue, 1 Sep 2020 00:31:45 +0200 Subject: [PATCH 4/6] Improve harder --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b8fbc46..38729c0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -42,7 +42,7 @@ jobs: build-and-push: needs: flake8 runs-on: ubuntu-latest - if: ! github.event_name == 'pull_request' + if: github.event_name != 'pull_request' && contains(github.ref, 'actions') != 'true' && ! contains(toJSON(github.event.commits.*.message), '[ci skip]') env: DOCKER_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }} @@ -97,11 +97,11 @@ jobs: docker tag $REPO:$BRANCH $REPO:${{ steps.vars.tagger.tag }} - name: Login to registry - if: github.event.pull_request == false + if: github.event_name != 'pull_request' run: echo $DOCKER_PASSWORD | docker login -u $DOCKER_USERNAME --password-stdin - name: Pushes the Docker image env: REPO: ${{ steps.vars.outputs.repo }} - if: github.event.pull_request == false + if: github.event_name != 'pull_request' run: docker push $REPO From 312abdf08ff558e1477a3097ec4fbbc3bb53026f Mon Sep 17 00:00:00 2001 From: Roxedus Date: Tue, 1 Sep 2020 00:34:23 +0200 Subject: [PATCH 5/6] Even harder --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 38729c0..e867930 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -98,7 +98,7 @@ jobs: - name: Login to registry if: github.event_name != 'pull_request' - run: echo $DOCKER_PASSWORD | docker login -u $DOCKER_USERNAME --password-stdin + run: echo $DOCKER_PASSWORD | docker login -u ${{ steps.vars.outputs.username }} --password-stdin - name: Pushes the Docker image env: From a268303d8610d9c387ba50a38fe6893b6156e315 Mon Sep 17 00:00:00 2001 From: Roxedus Date: Tue, 1 Sep 2020 00:39:56 +0200 Subject: [PATCH 6/6] Yeet Jenkinsfile [ci skip] --- Jenkinsfile | 71 ----------------------------------------------------- 1 file changed, 71 deletions(-) delete mode 100644 Jenkinsfile diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index 12f8f57..0000000 --- a/Jenkinsfile +++ /dev/null @@ -1,71 +0,0 @@ -pipeline { - agent none - environment { - GIT_REPO = 'Ev-1/ShiteMusicBot' - DOCKER_REPO = 'rnorge/music' - TAG="" - FLAKE_FILES = "bot.py cogs/*.py cogs/utils/*.py" - } - stages { - stage('Flake8') { - agent { label 'amd64'} - steps { - sh """ - python3.7 -m venv venv && venv/bin/pip install flake8 && venv/bin/python -m flake8 --max-line-length 120 ${FLAKE_FILES} - rm -rf venv/ - """ - script { - TAG = sh(returnStdout: true, script: 'grep -i bot_version cogs/utils/bot_version.py | cut -d" " -f3 | tr -d \\"').trim() - SBranch = sh(returnStdout: true, script: 'echo ${GIT_BRANCH} | sed "s#/#_#"').trim() - } - } - } - stage('Docker Builds') { - parallel { - stage('branch') { - agent { label 'amd64'} - when { - not { - changeRequest() - } - } - steps { - script { - if (BRANCH_NAME == 'master') { - def image = docker.build("${DOCKER_REPO}:${TAG}-amd64") - image.push("${TAG}-amd64") - image.push("latest-amd64") - } - else { - def image = docker.build("${DOCKER_REPO}:${SBranch}-amd64") - image.push() - } - } - } - } - stage('pr') { - agent { label 'amd64'} - when { changeRequest() } - steps { - script { - def image = docker.build("${DOCKER_REPO}:PR_$GIT_BRANCH-amd64") - } - } - } - } - } - stage('GitHub Release') { - when { branch 'master' } - agent { label 'amd64'} - steps { - withCredentials([usernameColonPassword(credentialsId: 'RoxBot-Dev Github', variable: 'GitCred')]) { - sh """ - git remote set-url origin "https://${GitCred}@github.com/${GIT_REPO}.git" - git tag ${TAG} - git push --tags - """ - } - } - } - } -}