Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
6b0b12d
frontend modification (started)
lfeldman-simpro Aug 12, 2021
2b68431
frontend modifications
lfeldman-simpro Aug 12, 2021
5ec274b
session.clj fix
lfeldman-simpro Aug 13, 2021
8fee033
session.clj fix
lfeldman-simpro Aug 13, 2021
e11d41f
LogoIcon fix
lfeldman-simpro Aug 13, 2021
d49ea41
warnings fix
lfeldman-simpro Aug 13, 2021
a52e620
formatting
lfeldman-simpro Aug 13, 2021
23dc328
frontend changes, Jenkinsfile
lfeldman-simpro Aug 13, 2021
9ca4450
frontend changes
lfeldman-simpro Aug 13, 2021
709e0c9
revert ProfileLink
lfeldman-simpro Aug 13, 2021
10b0731
revert ProfileLink
lfeldman-simpro Aug 13, 2021
e0739dd
formatting
lfeldman-simpro Aug 13, 2021
b9250f9
Jenkinsfile fix
lfeldman-simpro Aug 15, 2021
c9636f0
locales.clj updated
lfeldman-simpro Aug 16, 2021
546276a
Revert "session.clj fix"
lfeldman-simpro Aug 16, 2021
d06157f
reverted sessions.clj
lfeldman-simpro Aug 16, 2021
6fd557f
Report builder changed to BI reporting
lfeldman-simpro Aug 16, 2021
466fe7f
Report builder changed to BI reporting
lfeldman-simpro Aug 16, 2021
b59cbc8
removed welcome text
lfeldman-simpro Aug 16, 2021
73b0c05
removed welcome text
lfeldman-simpro Aug 16, 2021
6db445e
formatting
lfeldman-simpro Aug 17, 2021
846666c
added favicon
lfeldman-simpro Aug 17, 2021
eccba2d
updated brand color
lfeldman-simpro Aug 17, 2021
54c9476
updated icons
lfeldman-simpro Aug 17, 2021
c501413
logo icon formatting
lfeldman-simpro Aug 17, 2021
73fbfa6
new pulse link
lfeldman-simpro Aug 18, 2021
e2750f5
removed xrays
lfeldman-simpro Aug 19, 2021
8f18315
added walk me
lfeldman-simpro Aug 19, 2021
92e2f6f
removed Slack
lfeldman-simpro Aug 19, 2021
ff28ab6
removed unused import
lfeldman-simpro Aug 19, 2021
05c5317
removed unused import
lfeldman-simpro Aug 19, 2021
2263409
Help links
lfeldman-simpro Aug 19, 2021
a2513a8
removed help link in native query
lfeldman-simpro Aug 19, 2021
f46696d
removed unused import
lfeldman-simpro Aug 19, 2021
f197480
removed slack from pulse create
lfeldman-simpro Aug 20, 2021
fa64437
session cookie renamed back to SESSION_ID
lfeldman-simpro Aug 20, 2021
1626bc5
removed settings links
lfeldman-simpro Aug 23, 2021
d1cdc00
removed unused import
lfeldman-simpro Aug 23, 2021
8429f1a
removed unused import
lfeldman-simpro Aug 23, 2021
1d603b0
Added how to build metabase.jar locally.
Dec 17, 2021
4163171
TI-31 Updating jenkins job to work with 0.40.2
Dec 20, 2021
4610d8c
TI-31 Updating jenkins job to work with 0.40.2
Dec 20, 2021
4a4268e
TI-31 Updating jenkins job to work with 0.40.2
Dec 20, 2021
693dfd7
TI-31 Trying to run the docker image as root
Dec 20, 2021
516ddd0
TI-31 Trying to build the enterprise edition
Dec 21, 2021
fcd970c
world map for visualisation
lfeldman-simpro Apr 26, 2022
90da02f
added frontend restriction for pulse and dashboard subscription
lfeldman-simpro May 19, 2022
d026047
filtered users in pulse and dashboard subscription recipient pickers
lfeldman-simpro Jun 13, 2022
eaab307
display current mb version based on branch
lfeldman-simpro Jun 29, 2022
cea73d3
removed 'get alert' button
lfeldman-simpro Sep 19, 2022
d5d4263
reverted dashboard restriction
lfeldman-simpro Oct 17, 2022
007ada4
removed db sync on restart
lfeldman-simpro Jan 17, 2023
9c44767
removed search bar
lfeldman-simpro Jan 19, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions Jenkinsfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
pipeline {
agent {
docker {
image 'metabase/ci:java-11-lein-2.9.6-clj-1.10.3.822-04-22-2021'
args '-v /.npm:/.npm -v /.cache:/.cache -v /.yarn:/.yarn -u root:root -e MB_EDITION=ee'
}
}
environment {
HOME = "/.cache"
}
stages {
stage("print env variables") {
steps {
script {
echo sh(script: 'env|sort', returnStdout: true)
}
}
}
stage("run build") {
steps {
sh './bin/build'
}
}
}
post {
success {
archiveArtifacts artifacts: 'target/uberjar/metabase.jar'
slackSend color: 'good', channel: '#jenkins-metabasepackage', message: "*SUCCESSED* - Packaged metabase. Download jar file from Jenkins: <${env.BUILD_URL}|build ${env.BUILD_NUMBER}>"
}
failure {
slackSend color: 'danger', channel: '#jenkins-metabasepackage', message: "*FAILED* - Metabase build failed (<${env.BUILD_URL}|build ${env.BUILD_NUMBER}>) - <${env.BUILD_URL}console|click here to see the console output>"
}
}
}
10 changes: 9 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,11 @@
# Building metabase.jar locally

Clone this repo, then:
```bash
docker run --rm -it -v `pwd`:/app -w /app metabase/ci:java-11-lein-2.9.6-clj-1.10.3.822-04-22-2021 ./bin/build
```
**Note**: Get the image name from the `STAGE 1.4: main builder` section of the [Dockerfile](Dockerfile) in this repo.

# Metabase

Metabase is the easy, open source way for everyone in your company to ask questions and learn from data.
Expand Down Expand Up @@ -87,7 +95,7 @@ Metabase also allows you to hit our Query API directly from Javascript to integr

# License

This repository contains the source code for both the Open Source edition of Metabase, released under the AGPL, as well as the commercial edition of Metabase Enterprise, released under the Metabase Commercial Software License.
This repository contains the source code for both the Open Source edition of Metabase, released under the AGPL, as well as the commercial edition of Metabase Enterprise, released under the Metabase Commercial Software License.

See [LICENSE.txt](./LICENSE.txt) for details.

Expand Down
2 changes: 1 addition & 1 deletion app.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "Metabase",
"name": "BI Reporting",
"description": "Metabase report server",
"keywords": [
"business intelligence",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ export default function CacheFieldValuesScheduleWidget({
select={() => setIsFullSyncIsOnDemand(false, true)}
>
<p className="text-paragraph text-measure">
{t`When a user adds a new filter to a dashboard or a SQL question, Metabase will
{t`When a user adds a new filter to a dashboard or a SQL question, BI Reporting will
scan the field(s) mapped to that filter in order to show the list of selectable values.`}
</p>
</SyncOption>
Expand Down
4 changes: 2 additions & 2 deletions frontend/src/metabase/admin/datamodel/containers/FieldApp.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -298,7 +298,7 @@ const FieldGeneralPane = ({
<Section>
<SectionHeader
title={t`Visibility`}
description={t`Where this field will appear throughout Metabase`}
description={t`Where this field will appear throughout BI Reporting`}
/>
<div style={{ maxWidth: 400 }}>
<FieldVisibilityPicker
Expand Down Expand Up @@ -385,7 +385,7 @@ const FieldGeneralPane = ({
<Section last>
<SectionHeader
title={t`Cached field values`}
description={t`Metabase can scan the values for this field to enable checkbox filters in dashboards and questions.`}
description={t`BI Reporting can scan the values for this field to enable checkbox filters in dashboards and questions.`}
/>
<UpdateCachedFieldValues
rescanFieldValues={() => rescanFieldValues(field.id)}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ class UpdateFieldValues extends Component {
<Section>
<SectionHeader
title={t`Cached field values`}
description={t`Metabase can scan the values in this table to enable checkbox filters in dashboards and questions.`}
description={t`BI Reporting can scan the values in this table to enable checkbox filters in dashboards and questions.`}
/>
<ActionButton
className="Button mr2"
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/metabase/admin/people/components/GroupDetail.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -26,17 +26,17 @@ const GroupDescription = ({ group }) =>
{t`All users belong to the ${getGroupNameLocalized(
group,
)} group and can't be removed from it. Setting permissions for this group is a great way to
make sure you know what new Metabase users will be able to see.`}
make sure you know what new BI Reporting users will be able to see.`}
</p>
</div>
) : isAdminGroup(group) ? (
<div className="px2 text-measure">
<p>
{t`This is a special group whose members can see everything in the Metabase instance, and who can access and make changes to the
{t`This is a special group whose members can see everything in the BI Reporting instance, and who can access and make changes to the
settings in the Admin Panel, including changing permissions! So, add people to this group with care.`}
</p>
<p>
{t`To make sure you don't get locked out of Metabase, there always has to be at least one user in this group.`}
{t`To make sure you don't get locked out of BI Reporting, there always has to be at least one user in this group.`}
</p>
</div>
) : null;
Expand Down
6 changes: 3 additions & 3 deletions frontend/src/metabase/admin/permissions/selectors.js
Original file line number Diff line number Diff line change
Expand Up @@ -65,11 +65,11 @@ const SPECIAL_GROUP_FILTERS = [

function getTooltipForGroup(group) {
if (isAdminGroup(group)) {
return t`Administrators always have the highest level of access to everything in Metabase.`;
return t`Administrators always have the highest level of access to everything in BI Reporting.`;
} else if (isDefaultGroup(group)) {
return t`Every Metabase user belongs to the All Users group. If you want to limit or restrict a group's access to something, make sure the All Users group has an equal or lower level of access.`;
return t`Every BI Reporting user belongs to the All Users group. If you want to limit or restrict a group's access to something, make sure the All Users group has an equal or lower level of access.`;
} else if (isMetaBotGroup(group)) {
return t`MetaBot is Metabase's Slack bot. You can choose what it has access to here.`;
return t`MetaBot is BI Reporting Slack bot. You can choose what it has access to here.`;
}
return null;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ export function SettingsCloudStoreLink() {
const url = MetabaseSettings.storeUrl();
return (
<div>
<Description>{t`Manage your Cloud account, including billing preferences and technical settings about this instance in your Metabase Store account.`}</Description>
<Description>{t`Manage your Cloud account, including billing preferences and technical settings about this instance in your Report Builder Store account.`}</Description>
<Link href={url}>
{t`Go to the Metabase Store`}
<LinkIcon name="external" />
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,10 +51,10 @@ export default class SettingsGoogleForm extends Component {
/>
<h2>{t`Sign in with Google`}</h2>
<p className="text-medium">
{t`Allows users with existing Metabase accounts to login with a Google account that matches their email address in addition to their Metabase username and password.`}
{t`Allows users with existing Report Builder accounts to login with a Google account that matches their email address in addition to their Report Builder username and password.`}
</p>
<p className="text-medium">
{jt`To allow users to sign in with Google you'll need to give Metabase a Google Developers console application client ID. It only takes a few steps and instructions on how to create a key can be found ${(
{jt`To allow users to sign in with Google you'll need to give Report Builder a Google Developers console application client ID. It only takes a few steps and instructions on how to create a key can be found ${(
<ExternalLink
href="https://developers.google.com/identity/sign-in/web/devconsole-project"
target="_blank"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,9 @@ import { Flex } from "grid-styled";
import { SetupApi } from "metabase/services";
import { t } from "ttag";
import { color } from "metabase/lib/colors";
import MetabaseSettings from "metabase/lib/settings";

import Icon from "metabase/components/Icon";
import LoadingAndErrorWrapper from "metabase/components/LoadingAndErrorWrapper";
import MarginHostingCTA from "metabase/admin/settings/components/widgets/MarginHostingCTA";

const TaskList = ({ tasks }) => (
<ol>
Expand Down Expand Up @@ -109,7 +107,7 @@ export default class SettingsSetupList extends Component {
<Flex justifyContent="space-between">
<div className="px2">
<h2>{t`Getting set up`}</h2>
<p className="mt1">{t`A few things you can do to get the most out of Metabase.`}</p>
<p className="mt1">{t`A few things you can do to get the most out of BI Reporting.`}</p>
<LoadingAndErrorWrapper
loading={!this.state.tasks}
error={this.state.error}
Expand All @@ -129,10 +127,6 @@ export default class SettingsSetupList extends Component {
)}
</LoadingAndErrorWrapper>
</div>

{!MetabaseSettings.isHosted() && !MetabaseSettings.isEnterprise() && (
<MarginHostingCTA tagline={t`Have your server maintained for you.`} />
)}
</Flex>
);
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -236,7 +236,7 @@ export default class SettingsSlackForm extends Component {
<form noValidate>
<div className="px2" style={{ maxWidth: "585px" }}>
<h1>
{t`Metabase`}
{t`BI Reporting`}
<img
width="79px"
className="mx1"
Expand Down Expand Up @@ -269,7 +269,7 @@ export default class SettingsSlackForm extends Component {
<div className="py2">
{jt`Once you're there, give it a name and click ${(
<strong>&quot;{t`Add bot integration`}&quot;</strong>
)}. Then copy and paste the Bot API Token into the field below. Once you are done, create a "metabase_files" channel in Slack. Metabase needs this to upload graphs.`}
)}. Then copy and paste the Bot API Token into the field below. Once you are done, create a "metabase_files" channel in Slack. BI Reporting needs this to upload graphs.`}
</div>
</div>
<ul>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -75,8 +75,6 @@ export default class SettingsUpdatesForm extends Component {
<Version key={index} version={version} />
))}
</div>

{!MetabaseSettings.isHosted() && <HostingCTA />}
</div>
);
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ const EmbeddingLegalese = ({ onChange }) => (
.
</p>
<p className="text-medium" style={{ lineHeight: 1.48 }}>
{t`In plain English, when you embed charts or dashboards from Metabase in your own application, that application isn't subject to the Affero General Public License that covers the rest of Metabase, provided you keep the Metabase logo and the "Powered by Metabase" visible on those embeds. You should, however, read the license text linked above as that is the actual license that you will be agreeing to by enabling this feature.`}
{t`In plain English, when you embed charts or dashboards from BI Reporting in your own application, that application isn't subject to the Affero General Public License that covers the rest of Metabase, provided you keep the Metabase logo and the "Powered by Metabase" visible on those embeds. You should, however, read the license text linked above as that is the actual license that you will be agreeing to by enabling this feature.`}
</p>
<div className="flex layout-centered mt4">
<button
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,7 @@ export default class GroupMappingsWidget extends React.Component {
onClick={this._showAddRow}
>{t`Create a mapping`}</Button>
<p className="text-measure">
{t`Mappings allow Metabase to automatically add and remove users from groups based on the membership information provided by the
{t`Mappings allow BI Reporting to automatically add and remove users from groups based on the membership information provided by the
directory server. Membership to the Admin group can be granted through mappings, but will not be automatically removed as a
failsafe measure.`}
</p>
Expand Down
4 changes: 2 additions & 2 deletions frontend/src/metabase/admin/settings/selectors.js
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,7 @@ const SECTIONS = updateSectionsWithPlugins({
{
key: "map-tile-server-url",
display_name: t`Map tile server URL`,
note: t`Metabase uses OpenStreetMaps by default.`,
note: t`BI Reporting uses OpenStreetMaps by default.`,
type: "string",
},
{
Expand Down Expand Up @@ -331,7 +331,7 @@ const SECTIONS = updateSectionsWithPlugins({
},
{
key: "enable-embedding",
display_name: t`Enable Embedding Metabase in other Applications`,
display_name: t`Enable Embedding BI Reporting in other Applications`,
type: "boolean",
getHidden: settings => !settings["enable-embedding"],
},
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/metabase/admin/tasks/containers/TasksApp.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ class TasksApp extends React.Component {
<Flex align="center">
<AdminHeader title={t`Troubleshooting logs`} />
<Tooltip
tooltip={t`Trying to get to the bottom of something? This section shows logs of Metabase's background tasks, which can help shed light on what's going on.`}
tooltip={t`Trying to get to the bottom of something? This section shows logs of BI Reporting background tasks, which can help shed light on what's going on.`}
>
<Icon
name="info"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -47,7 +47,7 @@ export default class ForgotPasswordApp extends Component {
{
name: "email",
title: t`Email address`,
placeholder: t`The email you use for your Metabase account`,
placeholder: t`The email you use for your BI Reporting account`,
validate: validate.email(),
},
],
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/metabase/auth/containers/LoginApp.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ export default class LoginApp extends Component {

return (
<AuthLayout>
<h2 className="text-centered mb3">{t`Sign in to Metabase`}</h2>
<h2 className="text-centered mb3">{t`Administrator login`}</h2>
{visibleProviders.length === 1 && visibleProviders[0].Panel ? (
this.renderPanel(visibleProviders[0])
) : (
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/metabase/components/ChannelSetupMessage.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export default class ChannelSetupMessage extends Component {
};

static defaultProps = {
channels: ["email", "Slack"],
channels: ["email"],
};

render() {
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/metabase/components/ChannelSetupModal.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ export default class ChannelSetupModal extends Component {
};

static defaultProps = {
channels: ["email", "Slack"],
channels: ["email"],
};

render() {
Expand Down
Loading