git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 1/1] ci: new github-action for git-l10n code review

From
Jiang Xin <worldhello.net@gmail.com>
Date
Aug 27, 2021, 02:49 UTC
Message-ID
<CANYiYbESO7bvyuRcypmVKvqAdLk5492q5fUPu5ArdCY5PHzFSQ@mail.gmail.com>
In-Reply-To
<YShJscwm/jMDOCx5@coredump.intra.peff.net>
On Fri, Aug 27, 2021 at 10:10 AM Jeff King <peff@peff.net> wrote:
Show 36 quoted lines
>
> On Wed, Aug 25, 2021 at 02:14:43PM +0200, Johannes Schindelin wrote:
>
> > > Yes, this is a solution I also want to try at the very beginning. But
> > > some l10n team leaders may fork their repositories directly from
> > > git/git, and name their repo as "{OWNER}/git".  I want to try another
> > > solution: check existence of file "ci/config/allow-l10n" in branch
> > > "ci-config" using a GitHub API, instead of cloning the ci-config
> > > branch and execute the shell script "ci/config/allow-l10n".
> >
> > I understood that you were trying to imitate what git/git does.
> >
> > The problem, in git/git as well as in your patch, is that this is highly
> > cumbersome to use. Yes, it would be better if there was an easier UI to do
> > what you want to do, but the current reality is: there isn't.
> >
> > The main reason why it is so cumbersome to use is that your chosen
> > strategy scatters the CI configuration so much that it puts a mental
> > burden on the users. I, for one, have no idea what is currently in my
> > `ci-config` branch. And new users will be forced to struggle to set up
> > their fork in such a way that the configuration does what they want it to
> > do.
> >
> > And in this instance, there is not even any good reason to make it hard on
> > the users because most will likely not need that new workflow at all. That
> > workflow is primarily interesting for the l10n maintainers.
>
> Just adding my two cents as the person who created the "ci-config"
> mechanism: yes, it's absolutely horrible, and should be avoided if at
> all possible. :)
>
> Your repo-name solution seems like a quite reasonable alternative.
>
> (I'd still love for there to be a way to selectively disable CI on
> certain branches, but I didn't find another one, short of enforcing
> branch-naming conventions that the whole project must agree on).
Yesterday, I created a new github-action:
    https://github.com/marketplace/actions/file-exists-action

And want to use this action in the "ci-config (l10n-config)" job like this, but it appears slower than before:

-- snip begins --
jobs:
  l10n-config:
    runs-on: ubuntu-latest
    outputs:
      enabled: ${{ steps.check-repo-name.outputs.matched == 'yes' ||
steps.check-file-exists.outputs.exists }}
    steps:
      - id: check-repo-name
        ... ...
      - id: check-file-exists
        name: Check file in branch
        if: steps.check-repo-name.outputs.matched != 'yes'
        uses: jiangxin/file-exists-action@v1
        with:
          ref: ci-config
          path: ci/config/allow-l10n
-- snip ends --

The execution of the "l10n-config" job will take 4 seconds vs 2 seconds before. This may because the new action "jiangxin/file-exists-action" loads another VM to execute.

So in patch v3, I will remove the entirely "ci-config (l10n-config)" job, and use an if condition like this:

-- snip begins --
name: git-l10n
on: [push, pull_request_target]
jobs:
  git-po-helper:
    if: endsWith(github.repository, '/git-po') ||
contains(github.head_ref, 'l10n') || contains(github.ref, 'l10n')
    runs-on: ubuntu-latest
    permissions:
      pull-requests: write
    steps:
      ... ...
--snip ends --

Will check the target repository name first. If l10n leader has a fork repository with different repo name, push to a special branch name, such as "l10n/git-2.34", will also trigger the git-l10n workflow.

-- Jiang Xin

Previous: Jeff KingNext: Jiang Xin
Message 17 of 24 in “ci: new github-action for git-l10n code review”
  1. 0/1 ci: new github-action for git-l10n code reviewJiang Xin, Aug 22, 2021
  2. 1/1 ci: new github-action for git-l10n code reviewJiang Xin, Aug 22, 2021
  3. Bagas SanjayaAug 23, 2021
  4. Jiang XinAug 23, 2021
  5. Johannes SchindelinAug 23, 2021
  6. Junio C HamanoAug 23, 2021
  7. Johannes SchindelinAug 24, 2021
  8. Junio C HamanoAug 24, 2021
  9. Jean-Noël AVILAAug 24, 2021
  10. Jiang XinAug 31, 2021
  11. Jiang XinAug 24, 2021
  12. Junio C HamanoAug 24, 2021
  13. Jiang XinAug 24, 2021
  14. Johannes SchindelinAug 25, 2021
  15. Jiang XinAug 26, 2021
  16. Jeff KingAug 27, 2021
  17. Jiang XinAug 27, 2021
  18. ci: new github-action for git-l10n code reviewJiang Xin, Aug 27, 2021
  19. 1/1 ci: new github-action for git-l10n code reviewJiang Xin, Sep 2, 2021
  20. 0/1 ci: new github-action for git-l10n code reviewJiang Xin, Sep 2, 2021
  21. 0/1 ci: new github-action for git-l10n code reviewJiang Xin, Sep 9, 2021
  22. 1/1 ci: new github-action for git-l10n code reviewJiang Xin, Sep 9, 2021
  23. 1/1 ci: new github-action for git-l10n code reviewJiang Xin, Aug 23, 2021
  24. 0/1 ci: new github-action for git-l10n code reviewJiang Xin, Aug 23, 2021

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.