Skip to content

Commit

Permalink
tmp: test action
Browse files Browse the repository at this point in the history
  • Loading branch information
KevinMind committed Jan 19, 2024
1 parent bdc17e7 commit c18dded
Show file tree
Hide file tree
Showing 5 changed files with 268 additions and 92 deletions.
23 changes: 23 additions & 0 deletions .github/workflows/localization.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: GitHub Actions Demo
run-name: ${{ github.actor }} is testing out GitHub Actions 🚀
on: [push]
jobs:
Explore-GitHub-Actions:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 18
cache: 'yarn'
- name: Install gettext
run: sudo apt-get install gettext
- name: Install node_modules
run: yarn install --frozen-lockfile --prefer-offline
- name: Extract locales
run: yarn extract-locales
- name: Diff changes
run: yarn run zx ./bin/locales.mjs



41 changes: 41 additions & 0 deletions bin/locales.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
#!/usr/bin/env zx

import {$, path, echo, within, glob} from 'zx';

const localeDir = path.join(__dirname, '..', 'locale');
const templateFile = path.join(localeDir, '/templates/LC_MESSAGES/amo.pot');

// git diff --numstat returns the number of insertions and deletions for each file
// this regex extracts the numbers from the output
const regex = /([0-9]+).*([0-9]+)/;

within(async () => {
const {stdout: output} = await $`git diff --numstat -- ${templateFile}`;

const [, insertions = 0, deletions = 0] = output.match(regex) || [];

const isLocaleClean = insertions < 2 && deletions < 2;

if (isLocaleClean) {
return echo('No locale changes, nothing to update, ending process');
}

const poFiles = await glob(`${localeDir}/**/amo.po`);

for await (const poFile of poFiles) {
const dir = path.dirname(poFile);
const stem = path.basename(poFile, '.po');
const tempFile = path.join(dir, `${stem}.po.tmp`);

try {
await $`msgmerge --no-fuzzy-matching -q -o ${tempFile} ${poFile} ${templateFile}`
await $`mv ${tempFile} ${poFile}`
} catch (error) {
await $`rm ${tempFile}`;
throw new Error(`Error merging ${poFile}`);
}
}

return true;
});

3 changes: 2 additions & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -329,7 +329,8 @@
"webpack-cli": "^4.0.0",
"webpack-dev-middleware": "^6.1.1",
"webpack-hot-middleware": "^2.26.0",
"webpack-subresource-integrity": "5.1.0"
"webpack-subresource-integrity": "5.1.0",
"zx": "7.2.3"
},
"bundlewatch": [
{
Expand Down
2 changes: 1 addition & 1 deletion src/amo/components/AddAddonToCollection/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,7 @@ export class AddAddonToCollectionBase extends React.Component<InternalProps> {
let progressMessage;

if (loadingUserCollections) {
progressMessage = i18n.gettext('Loading…');
progressMessage = i18n.gettext('Test');
} else if (loadingAddonsInCollections) {
progressMessage = i18n.gettext('Adding…');
}
Expand Down

0 comments on commit c18dded

Please sign in to comment.