Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
The history was slightly altered before merging it:
  * All files from focus-ios are now under its own subdirectory
  * All commits messages were rewritten to link issues and pull requests to the former repository
  * All commits messages were prefixed with [focus-ios]
  • Loading branch information
isabelrios committed Mar 5, 2024
2 parents 8be2b38 + c2fece3 commit 87ca3ab
Show file tree
Hide file tree
Showing 1,537 changed files with 115,424 additions and 0 deletions.
12 changes: 12 additions & 0 deletions focus-ios/.cron.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Definitions for jobs that run periodically. For details on the format, see
# `taskcluster/taskgraph/cron/schema.py`. For documentation, see
# `taskcluster/docs/cron.rst`.
---

jobs:
- name: l10-screenshots
job:
type: decision-task
target-tasks-method: l10n_screenshots
treeherder-symbol: l10-screenshots
when: [] # Manual trigger only
32 changes: 32 additions & 0 deletions focus-ios/.github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.

# This CODEOWNERS file defines individuals or teams that are responsible
# for code in this repository. Code owners are automatically requested
# for review when someone opens a pull request that modifies code that
# they own. Order is important; the last matching pattern takes the most
# precedence.
#
# A CODEOWNERS file uses a pattern that follows the same rules used in
# gitignore files. The pattern is followed by one or more GitHub usernames
# or team names using the standard @username or @org/team-name format.
# You can also refer to a user by an email address that has been added
# to their GitHub account, for example [email protected].
# https://help.github.com/articles/about-codeowners/


# By default the Focus iOS Engineering team will be the owner for everything
# in the repo. Unless a later match takes precedence.

* @mozilla-mobile/focus-ios-eng


# Changes to the CI configuration must be reviewed a limited group of people.
# We narrowed this down to make sure that no changes go unnoticed.

/bitrise.yml @isabelrios @jevans-mozilla @OrlaM

# Changes to string files can be reviewed and approved by mergify

focus-ios/Blockzilla/**/*.strings @mergify
18 changes: 18 additions & 0 deletions focus-ios/.github/ISSUE_TEMPLATE/---bug-report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
name: "\U0001F41E Bug report"
about: Create a report to help us improve
labels: "Bug 🐞"

---

## Steps to reproduce

### Expected behavior

### Actual behavior

### Device & build information
* Device: ?
* Build version: ?
### Notes
Attachments:
12 changes: 12 additions & 0 deletions focus-ios/.github/ISSUE_TEMPLATE/---feature.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
name: "🎁 Feature request"
about: Suggest an idea for this project
labels: "Feature-Request"

---

### User proposal
> Why should we implement this? What is the user benefit?
### Ideas for Solution
> Let us know if you have an idea on how to solve this user proposal
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
name: "Issue: \U0001F494 Intermittent UI Test Issue"
about: Create an issue to help log a UI test failure
title: ''
labels: eng:automation, eng:ui-test
assignees: ''

---

### Bitrise Test Run:
Provide a Bitrise test run report link here showcasing the problem
### Stacktrace:
### Build:
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Create a PR to build the app using newest rust-component version available

permissions:
contents: write
pull-requests: write

on:
schedule:
- cron: '0 20 * * *'

jobs:
build:
runs-on: ubuntu-latest
strategy:
max-parallel: 4
matrix:
python-version: [3.7]
steps:
- uses: actions/checkout@v2
with:
persist-credentials: false
token: ${{ secrets.GITHUB_TOKEN }}
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -r ./focus-ios/focus-ios-tests/github-actions-scripts/requirements.txt
- name: Modify SPM file
run: |
python ./focus-ios/focus-ios-tests/github-actions-scripts/update-rust-component-version.py
- name: Get new rust-component tag to be used in the PR info
run: |
cd focus-ios/focus-ios-tests/github-actions-scripts/
chmod u+x read-rust-component-tag.sh
echo "version=$(./read-rust-component-tag.sh)" >> $GITHUB_ENV
- name: Remove temp file created to store the tag info
run: |
cd focus-ios/focus-ios-tests/github-actions-scripts/
[ ! -e newest_tag.txt ] || rm newest_tag.txt
- name: Script to check if branch exists to not commit again
run: |-
branch=$(curl -X GET -s -H "Accept: application/vnd.github.v3+json" https://api.github.com/repos/mozilla-mobile/focus-ios/branches?per_page=100 | jq -r '.[].name | select(contains("update-spm-new-rust-component-tag-${{ env.version }}"))')
echo $branch
if [ -z "$branch" ]; then echo "BRANCH_CREATED=false" >> $GITHUB_ENV; else echo "BRANCH_CREATED=true" >> $GITHUB_ENV;fi
- name: Update rust-component release in SPM
if: env.BRANCH_CREATED == 'false'
run: |-
git diff
git diff --quiet || (git add focus-ios/Blockzilla.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved focus-ios/Blockzilla.xcodeproj/project.pbxproj)
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
if: env.BRANCH_CREATED == 'false'
with:
commit-message: Auto update SPM with latest rust-component release ${{ env.version }}
author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
committer: GitHub <[email protected]>
title: Auto Update SPM with latest rust-component version ${{ env.version }}
branch: update-spm-new-rust-component-tag-${{ env.version }}
labels: Do Not Land
token: ${{ secrets.GITHUB_TOKEN }}
reviewers: mozilla-mobile/focus-ios-eng
10 changes: 10 additions & 0 deletions focus-ios/.github/workflows/focus-ios-glean-probe-scraper.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: Glean probe-scraper
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
glean-probe-scraper:
uses: mozilla/probe-scraper/.github/workflows/glean.yaml@main
50 changes: 50 additions & 0 deletions focus-ios/.github/workflows/focus-ios-import-strings.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Create a PR with changes after importing strings

permissions:
contents: write
pull-requests: write

on:
schedule:
# Runs at 10pm on Sunday
- cron: '0 22 * * 0'

jobs:
build:
runs-on: macos-13
strategy:
max-parallel: 4
matrix:
python-version: [3.9]
xcode: ["15.0.1"]
steps:
- uses: actions/checkout@v2
with:
persist-credentials: false
token: ${{ secrets.GITHUB_TOKEN }}
- name: Select Xcode ${{ matrix.xcode }}
run: sudo xcode-select -s /Applications/Xcode_${{ matrix.xcode }}.app
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Get the current date for PR title
run: echo "current_date=$(date +"%m-%d-%Y")" >> $GITHUB_ENV
- name: Run script to import strings
run: sh ./focus-ios/focus-ios-tests/tools/import-strings.sh
- name: Update new strings
run: |-
git diff || (git add focus-ios/Blockzilla/*/*.lproj/* focus-ios/Blockzilla/*.lproj/* focus-ios/Blockzilla.xcodeproj/project.pbxproj)
git restore focus-ios/Blockzilla.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved
- name: Create Pull Request
uses: peter-evans/create-pull-request@v3
with:
author: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
committer: GitHub <[email protected]>
token: ${{ secrets.GITHUB_TOKEN }}
commit-message: string-import-${{ env.current_date }}
title: "string-import-${{ env.current_date }}"
branch: string-import-${{ env.current_date }}
body: "This (automated) PR import string changes"
labels: Needs Landing
reviewers: mozilla-mobile/focus-ios-eng
51 changes: 51 additions & 0 deletions focus-ios/.github/workflows/update-nimbus-experiments.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/

name: "Update Nimbus Experiments"

on:
schedule:
- cron: '*/30 * * * *'
workflow_dispatch: {}

jobs:
update-nimbus-experiments:
name: "Update Nimbus Experiments"
runs-on: ubuntu-latest
steps:
- name: "Checkout Main Branch"
uses: actions/checkout@v3
with:
path: focus-ios
ref: main
fetch-depth: 0
- name: "Update Experiments JSON"
id: update-experiments-json
uses: mozilla-mobile/update-experiments@v3
with:
repo-path: focus-ios
output-path: Blockzilla/Nimbus/initial_experiments.json
experimenter-url: https://experimenter.services.mozilla.com/api/v6/experiments-first-run/
app-name: focus_ios
branch: automation/update-nimbus-experiments
- name: Create Pull Request
id: create-pull-request
uses: peter-evans/create-pull-request@v4
if: steps.update-experiments-json.outputs.changed == 1 && steps.update-experiments-json.outputs.changed-branch >= 1
with:
token: ${{ secrets.GITHUB_TOKEN }}
path: focus-ios
branch: automation/update-nimbus-experiments
commit-message: "Automated: update initial_experiments.json based on the current first-run experiments in experimenter"
title: "Update initial experiments JSON for Nimbus"
body: "This (automated) PR updates the initial_experiments.json on the `main` branch"
delete-branch: true
labels: Needs Code Review
- name: Enable Pull Request Automerge
if: steps.create-pull-request.outputs.pull-request-operation == 'created'
uses: peter-evans/enable-pull-request-automerge@v2
with:
token: ${{ secrets.GITHUB_TOKEN }}
pull-request-number: ${{ steps.create-pull-request.outputs.pull-request-number }}
merge-method: squash
61 changes: 61 additions & 0 deletions focus-ios/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Xcode
build/
*.pbxuser
!default.pbxuser
*.mode1v3
!default.mode1v3
*.mode2v3
!default.mode2v3
*.perspectivev3
!default.perspectivev3
xcuserdata
*.xccheckout
*.moved-aside
DerivedData
*.hmap
*.ipa
*.xcuserstate
*.xcscmblueprint
.build

# Swift Package Manager
.swiftpm

# OS X
.DS_Store

# Vim
*~
.*.sw*

# IDEA
.idea

# Python
*.pyc

Lists/disconnect-*
Carthage

screenshots
screenshots-derived-data

# l10n clone for scripts
focusios-l10n
export-locales-env

# localization tools clone
focus-ios/focus-ios-tests/tools/Localizations

# Glean
.venv/
focus-ios/Blockzilla/Generated

import-strings.log
export-strings.log

shavar-prod-lists

# Nimbus build infrastructure, derived from https://github.com/mozilla/application-services
bin/nimbus-fml.sh
bin/nimbus-fml-configuration.local.sh
Empty file added focus-ios/.gitmodules
Empty file.
57 changes: 57 additions & 0 deletions focus-ios/.mergify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
queue_rules:
- name: default
conditions:
- check-success=Bitrise

pull_request_rules:
- name: Resolve conflict
conditions:
- conflict
actions:
comment:
message: This pull request has conflicts when rebasing. Can you please fix it @{{author}}? 🙏
- name: Needs landing - Rebase
conditions:
- label=Needs Landing
- "#approved-reviews-by>=1"
- -draft
- label!=Work In Progress
- label!=Do Not Land
actions:
queue:
method: rebase
name: default
- name: Needs landing - Squash
conditions:
- label=Needs Landing (Squash)
- "#approved-reviews-by>=1"
- -draft
- label!=work in progress
- label!=do not land
actions:
queue:
method: squash
name: default
- name: String Import - Auto Approve
conditions:
- author=github-actions[bot]
- title~=string-import*
- or:
- files~=^Blockzilla\/[^\/]*\/[^\/]*.lproj\/*
- files~=^Blockzilla\/[^\/]*.lproj\/*
actions:
review:
type: APPROVE
message: Automatically approving string import
- name: String Import - Auto Merge
conditions:
- author=github-actions[bot]
- title~=string-import*
- or:
- files~=^Blockzilla\/[^\/]*\/[^\/]*.lproj\/*
- files~=^Blockzilla\/[^\/]*.lproj\/*
actions:
queue:
method: rebase
name: default

Loading

0 comments on commit 87ca3ab

Please sign in to comment.